-
Notifications
You must be signed in to change notification settings - Fork 0
/
salient-metaphors-of-anger-in-Indonesian-ms.Rmd
1960 lines (1266 loc) · 229 KB
/
salient-metaphors-of-anger-in-Indonesian-ms.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
---
title: "ANGER IN INDONESIAN: Awakening a sleeping tiger"
csl: "unified-style-sheet-for-linguistics.csl"
bibliography: "anger-references.bib"
link-citations: yes
output:
html_notebook:
code_folding: hide
fig_caption: yes
fig_width: 6
number_sections: yes
toc: yes
toc_float: yes
bookdown::word_document2:
df_print: kable
fig_caption: yes
fig_width: 6
number_sections: no
reference_docx: "template.docx"
author: 'Gede Primahadi Wijaya Rajeg <a itemprop="sameAs" content="https://orcid.org/0000-0002-2047-8621" href="https://orcid.org/0000-0002-2047-8621" target="orcid.widget" rel="noopener noreferrer" style="vertical-align:top;"><img src="https://orcid.org/sites/default/files/images/orcid_16x16.png" style="width:1em;margin-right:.5em;" alt="ORCID iD icon"></a>'
---
<style type="text/css">
body{
font-size: 14pt;
}
</style>
```{r setup, include = FALSE, message = FALSE, warning = FALSE, echo = FALSE}
knitr::opts_chunk$set(fig.width = 6,
fig.asp = 0.618,
dpi = 300,
echo = FALSE,
tidy = FALSE)
library(tidyverse)
library(happyr) # using some functions from this package
leipzig_size <- read.table(file = "data/corpus_total_size_per_file.txt",
header = TRUE,
sep = "\t",
quote = "",
comment.char = "")
source("codes/MARAH-utility-R-functions.R")
```
# Introduction {#intro}
This paper investigates the salient metaphoric and metonymic conceptualisations of the concept [anger]{.smallcaps} in standard Indonesian ([Glottocode: indo1316](https://glottolog.org/resource/languoid/id/indo1316)), the official variety of Malay used in the Indonesian archipelago. Indonesian belongs to "the Malayic subgroup of Western Malayo-Polynesian" [@tadmor_malay-indonesian_2009, 791; @adelaar_dialects_2017, 571] of the Austronesian language. Malay-Indonesian is spoken by almost 280 million speakers combined in Indonesia, Malaysia, and Brunei [@tadmor_malay-indonesian_2009, 791; @adelaar_dialects_2017, 571]. It has been the "lingua franca" in the regions and developed the colloquial varieties exhibiting great differences among themselves and with the standard language in many aspects of linguistic structures [@tadmor_malay-indonesian_2009, 793].
## Previous studies on emotion concepts in Indonesian {#previous-study-emotion}
Heider [-@heider_landscapes_1991] analysed emotion concepts in Minangkabau spoken in West Sumatera, and Indonesian spoken by the Minangkabau and the Javanese communities. The goals were to map the connection between emotion words and identify prototypical scenarios of the emotions related to the relevant behavioural correlates. Then, Levenson et al.’s [-@levenson_emotion_1992] study, also in Minangkabau, measured the physiological correlates associated with (positive and negative) emotions. A recent collection of papers in Fox [-@fox_expressions_2018] offers anthropological linguistic studies of emotions in the regional Austronesian languages of Indonesia.
Shaver et al. [-@shaver_structure_2001] investigated the hierarchical and family-resemblance structures of emotion lexicons. They found that Indonesian and American English exhibit similarity in conceptualising [emotion]{.smallcaps} at (i) the superordinate level (i.e., positive, and negative emotions) [@shaver_structure_2001, 215-216], and (ii) the basic-level categories. The Indonesian's terms for the basic-level categories refer to the same categories as in American English, namely *cinta* 'love', *senang* 'happiness', *marah* 'anger', *kawatir/takut* 'anxiety/fear', and *sedih* 'sadness' [@shaver_structure_2001, 218].
Linguistic studies in Indonesian/Malay reveal the so-called "psycho-collocations" [@matisoff_hearts_1986], which are lexico-semantic figurative expressions for mental activities and personhood, and which component parts consist of body-part terms. Indonesian/Malay have extensive repertoires of psycho-collocations, especially with the word *hati* 'liver', suggesting the prominence of the liver as the seat of psychological realms in the Malay world [@siahaan_did_2008; @goddard_contrastive_2008; @oey_psycho-collocations_1990; @sather_work_2018; @fox_towards_2018, 12]. Musgrave [-@musgrave_nonsubject_2001] and Mulyadi [-@mulyadi_verba_2012] investigated the syntactic and semantic properties of Indonesian emotion predicates. Mulyadi [-@mulyadi_verba_2012] particularly is a contrastive study of emotion verbs between Indonesian and the Asahan Malay variety spoken in Tanjungbalai (Asahan), North Sumatera, Indonesia.
Indonesian emotions have also been analysed using the *Conceptual Metaphor Theory* (CMT) [@siahaan_did_2008; @siahaan_why_2015; @rajeg_metafora_2013; @rajeg_metaphorical_2019]. Siahaan [-@siahaan_did_2008] examined the cultural conceptualisations of *hati* 'liver', proposing that (i) liver divination ritual and (ii) ethno-religious belief of *hati* as the locus for the living soul underlie the conceptualisations of *hati* as the seat of emotion and cognition [see also @goddard_contrastive_2008]. Siahaan's [-@siahaan_why_2015] follow-up study discovered that 'emotion' is the predominant figurative extension of Indonesian temperature terms. Next, Rajeg [-@rajeg_metafora_2013] analysed five Indonesian basic-level emotions. He applied *Configural Frequency Analysis* (CFA) [@gries_statistics_2009] to identify emotion-specific metaphors [@kovecses_metaphor_2000, 35] and examined how these metaphors semantically distinguish the emotions. Another study by Rajeg [-@rajeg_metaphorical_2019] investigated the distinctive metaphors for [happiness]{.smallcaps} near-synonyms, combining the *MetaNet* (MN) approach [@oana_computational_2017; @petruck_metanet_2016], *Metaphorical Pattern Analysis* (MPA) [@stefanowitsch_happiness_2004; @stefanowitsch_words_2006], and *Multiple Distinctive Collexeme Analysis* (MDCA) [@hilpert_distinctive_2006]; the study reveals that metaphors strongly distinguishing happiness and joy in English [@stefanowitsch_happiness_2004; @stefanowitsch_words_2006] are also those distinguishing the Indonesian equivalences of happiness (i.e., '*kebahagiaan*') and joy ('*kegembiraan*').
## Previous studies on [anger]{.smallcaps} in Indonesian {#previous-study-anger}
Heider [-@heider_landscapes_1991, 57, Table 7] discovered that, in representing anger, figurative expressions (i.e., *palak* 'stifling; angry' and *panas hati* 'lit. hot liver; angry') received higher rating than the literal expression (i.e., *marah*). Heider [-@heider_landscapes_1991, 24-25] also proposed four [anger]{.smallcaps}-like clusters in Minangkabau Indonesian: (i) "anger" clusters (*naik darah* 'lit. rising blood; angry'), (ii) "anger/cruel" clusters (*bengis* 'cruel; harshness'), (iii) "anger/dislike" clusters (*gemas* 'irritated'), and (iv) "anger/trembling" clusters (*gemetar* 'trembling'). The elicited scenarios from the "anger/cruel" clusters revealed that the antecedents of anger "are hurtful acts by others, especially naughty children, and the outcomes are physical violence and verbal abuse" [@heider_landscapes_1991, 80, 116] (e.g., [§\@ref(verbal-behaviour-typebased)](#verbal-behaviour-typebased) and [§\@ref(violent-behaviour-typebased)](#violent-behaviour-typebased)). Heider [-@heider_landscapes_1991, 80] also noted that in the actual, spontaneous behaviour (rather than in the elicited behaviour), Indonesians "mask most anger, and the open expression of anger is strongly disapproved of and negatively sanctioned".
Rajeg [-@rajeg_metafora_2013, 211-214] revealed that eight metaphors are significantly attracted to *amarah/kemarahan* 'anger'. They are [controlling emotion is controlling a moving object]{.smallcaps}, [emotion is pressurised substance]{.smallcaps}, [emotion is fluid in a container]{.smallcaps}, [emotion is heated fluid in a container]{.smallcaps}, [emotion is fire]{.smallcaps}, ([intensity of]{.smallcaps}) [emotion is temperature]{.smallcaps} ([hot/cold]{.smallcaps}), ([intensity of]{.smallcaps}) [emotion is verticality]{.smallcaps} ([high/low]{.smallcaps}), and [emotion is natural forces]{.smallcaps}. Six metaphors are statistically repelled: [emotion is a possessable object]{.smallcaps}, [causing emotion is object transfer]{.smallcaps}, [emotion is an accidental motion]{.smallcaps}, [emotion is a journey]{.smallcaps}, [becoming emotion is finding an object]{.smallcaps}, and [emotion is liquid]{.smallcaps}. The statistical attraction of Indonesian [anger]{.smallcaps} to the [heat]{.smallcaps}- and [substance]{.smallcaps}-related metaphors suggests the universality and centrality of these metaphors for [anger]{.smallcaps} as found in different languages [@kovecses_concept_2000], most notably English [@stefanowitsch_words_2006; @holland_cognitive_1987]. Rajeg's [-@rajeg_metafora_2013] quantitative study complements Yuditha's [-@yuditha_indonesian_2013] introspective proposal on the specific metaphors of anger. Lastly, Rajeg's [-@rajeg_metaphorical_2014] preliminary quantitative investigation demonstrates that distinctive metaphorical constructions across five [anger]{.smallcaps} synonyms prominently highlight the Intensity of anger.
This chapter presents new approaches in the study of Indonesian [anger]{.smallcaps} from the CMT and corpus linguistic perspectives. It integrates the lexical [@kovecses_lexical_2019] ([§\@ref(typebased-analysis)](#typebased-analysis)) and corpus-based approaches [@stefanowitsch_corpus-based_2006; @stefanowitsch_gries_2006] ([§\@ref(tokenbased-analysis)](#tokenbased-analysis)) into the so-called *salience-based approach* [@kovecses_salience_2015] ([§\@ref(method)](#method)). The inclusion of metonymy ([§\@ref(typebased-metonymy-salience-results)](#typebased-metonymy-salience-results) and [\@ref(tokenbased-metonymy-salience-results)](#tokenbased-metonymy-salience-results)) and the contextual factors ([§\@ref(contexts)](#contexts)) fill the gap from previous works, focusing only on metaphor and excluding contexts in the use of metaphors.
# Methodology {#method}
```{r keywords-frequency-analyses, message = FALSE, echo = FALSE}
# load the prepared data
load(file = "data/leipzig-NON-MARAH-wlist.RData")
load(file = "data/leipzig-MARAH-wlist.RData")
# remove the PERSONAL PRONOUN suffixes
MARAH_sum_lemma <- MARAH_sum %>%
mutate(lemma = str_replace_all(match, "(nya|ku|mu)$", "")) %>%
group_by(lemma) %>%
summarise(n = sum(n), .groups = "drop") %>%
arrange() %>%
filter(lemma %in% c("amarah", "kemarahan", "marah"))
NON_MARAH_sum_lemma <- NON_MARAH_sum %>%
mutate(lemma = str_replace_all(match, "(nya|ku|mu)$", "")) %>%
group_by(lemma) %>%
summarise(n = sum(n), .groups = "drop") %>%
arrange() %>%
filter(lemma %in% c("geram", "berang", "gusar", "kegusaran", "keberangan", "kegeraman", "kekesalan", "kemurkaan", "keberangan", "kesal", "murka"))
# compare frequency of the terms
ALL_MARAH_sum_lemma <- bind_rows(MARAH_sum_lemma, NON_MARAH_sum_lemma)
## ke- -an forms
ke_an <- ALL_MARAH_sum_lemma %>%
filter(str_detect(lemma, "^ke.+an$")) %>%
filter(str_detect(lemma, "kesal", negate = TRUE)) %>%
arrange(desc(n)) %>%
mutate(perc = round(n/sum(n) * 100, 2))
ke_an_count <- ke_an$n
names(ke_an_count) <- ke_an$lemma
ke_an_chisq <- chisq.test(ke_an_count)
ke_an_chisq_residuals <- chisq.test(ke_an_count)$residuals
ke_an_pvals <- if (ke_an_chisq$p.value < 0.05 & ke_an_chisq$p.value > 0.01) " < 0.05" else if (ke_an_chisq$p.value < 0.01 & ke_an_chisq$p.value > 0.001) " < 0.01" else if (ke_an_chisq$p.value < 0.001) " < 0.001"
## root forms
root <- ALL_MARAH_sum_lemma %>%
filter(str_detect(lemma, "^ke.+an$", negate = TRUE)) %>%
filter(str_detect(lemma, "kesal", negate = TRUE)) %>%
mutate(lemma = if_else(str_detect(lemma, "marah"), "(a)marah", lemma)) %>%
group_by(lemma) %>%
summarise(n = sum(n), .groups = "drop") %>%
arrange(desc(n)) %>%
mutate(perc = round(n/sum(n) * 100, 2))
root_count <- root$n
names(root_count) <- root$lemma
root_chisq <- chisq.test(root_count)
root_chisq_residuals <- chisq.test(root_count)$residuals
root_pvals <- if (root_chisq$p.value < 0.05 & root_chisq$p.value > 0.01) " < 0.05" else if (root_chisq$p.value < 0.01 & root_chisq$p.value > 0.001) " < 0.01" else if (root_chisq$p.value < 0.001) " < 0.001"
```
The Indonesian terms corresponding to the English *anger* are *marah* 'angry; anger'^[The English translations come from Stevens and Schmidgall-Tellings [-@stevens_comprehensive_2004].], *amarah*^[*Amarah* is the informal variant of *marah* as indicated by the official *Kamus Besar Bahasa Indonesia* (KBBI) *The Big Dictionary of Indonesian* and defined under the entry for *marah*: https://kbbi.kemdikbud.go.id/entri/marah (accessed on October 26, 2021).] 'anger', and *kemarahan* 'fury; rage; anger', the noun derivative from the root *marah*. The choice is based on Shaver et al.'s [-@shaver_structure_2001, 217] finding that *marah* emerges as the prototypical label for [anger]{.smallcaps} category in Indonesian, as it is semantically broader and commonly used in everyday Indonesian. The commonality of *(a)marah* is evident from the frequency data in the **Indonesian Leipzig Corpora** (ILC) [@goldhahn_building_2012]. The combined token frequencies of *(a)marah* [`r prettyNum(pull(filter(root, lemma == "(a)marah"), n), big.mark = ",")`] is the highest compared to the other terms identified by Shaver et al. [-@shaver_structure_2001, 218, Table 4], namely *geram* 'furious; angry' [`r prettyNum(pull(filter(root, lemma == "geram"), n), big.mark = ",")`] and *berang* 'furious; fury' [`r prettyNum(pull(filter(root, lemma == "berang"), n), big.mark = ",")`], as well as to the other near-synonyms of *marah*, namely *murka* 'wrath; anger; fury' [`r prettyNum(pull(filter(root, lemma == "murka"), n), big.mark = ",")`] and *gusar* 'angry; offended; annoyed' [`r prettyNum(pull(filter(root, lemma == "gusar"), n), big.mark = ",")`] (*X*^2^~goodness-of-fit~=`r format(round(root_chisq$statistic, 1))`; *df*=`r root_chisq$parameter`; *p*~two-tailed~`r root_pvals`). Moreover, the derived noun *ke**marah**an* [`r prettyNum(pull(filter(ke_an, lemma == "kemarahan"), n), big.mark = ",")`] is the most frequent compared to other noun derivatives based on the other roots, namely *ke**murka**an* [`r prettyNum(pull(filter(ke_an, lemma == "kemurkaan"), n), big.mark = ",")`], *ke**gusar**an* [`r prettyNum(pull(filter(ke_an, lemma == "kegusaran"), n), big.mark = ",")`], *ke**geram**an* [`r prettyNum(pull(filter(ke_an, lemma == "kegeraman"), n), big.mark = ",")`], and *ke**berang**an* [`r prettyNum(pull(filter(ke_an, lemma == "keberangan"), n), big.mark = ",")`] (*X*^2^~goodness-of-fit~=`r format(round(ke_an_chisq$statistic, 1))`; *df*=`r ke_an_chisq$parameter`; *p*~two-tailed~`r ke_an_pvals`).
The dataset for the type-based, lexical approach is culled from (i) the Indonesian WordNet (v1.0) [@bond_wordnet_2014]^[The Indonesian WordNet 1.0 is available at http://compling.hss.ntu.edu.sg/omw/cgi-bin/wn-gridx.cgi?usrname=&gridmode=wnbahasa (last accessed on 22 January 2022.)], (ii) the monolingual *Kamus Bahasa Indonesia* (the Indonesian Dictionary) (KBI) [@kamus_bi_2008], (iii) the official *Tesaurus Tematis Bahasa Indonesia* (the Indonesian Thematic Thesaurus) (http://tesaurus.kemdikbud.go.id/tematis/)^[The thesaurus is compiled and maintained by the Language Development and Cultivation Agency of the Ministry of Education and Culture of the Republic of Indonesia.], and (iv) a bilingual Indonesian-English dictionary [@stevens_comprehensive_2004]. The relevant linguistic expressions were gathered as follows. From the WordNet, KBI, and the thesaurus, the three Indonesian [anger]{.smallcaps} words (*marah*, *amarah*, *kemarahan*) were used as the search terms. This approach will retrieve expressions that contain (one of) the [anger]{.smallcaps} terms in their definition entries. These expressions were then checked for the evoked metaphorical/metonymical conceptualisations by looking at their meanings in the *Kamus Besar Bahasa Indonesia* (KBBI) (the Big Indonesian Dictionary)^[I used KBI instead of KBBI because KBBI only outputs the brief definition of the three [anger]{.smallcaps} words but not the metaphorical/metonymical expressions related to them, which can be found through the linked thematic thesaurus in the entry. In contrast, the available full PDF version of KBI allows me to do a concordance-like search throughout the PDF using the target terms, which may appear in the definition of an entry related to them. This is not possible in KBBI because the search field is only used for the headword, not the words contained in the definition of the headword. That way, we need to know *a priori* all expressions which definitions contain the [anger]{.smallcaps} words.] following the procedure of the *Metaphor Identification Procedure* (MIP) [@pragglejaz_mip_2007; @pragglejaz_mip_2010] (see below). To gather the data from the bilingual dictionary, the English terms "anger" and "angry" were searched for in the PDF version of the dictionary; this allows retrieval of the Indonesian expressions which English definitions contain the word "angry" or "anger".
```{r leipzig-corpus-information}
leipzig_size <- mutate(leipzig_size,
sources = if_else(str_detect(corpus_id, "news"), "news", "web"),
sources = if_else(str_detect(corpus_id, "wikipedia"), "wikipedia", sources),
sources = if_else(str_detect(corpus_id, "mixed"), "mixed", sources))
leipzig_size_sources <- leipzig_size %>%
group_by(sources) %>%
summarise(total_tokens = sum(total_tokens), .groups = "drop") %>%
mutate(perc_sources = round(total_tokens/sum(total_tokens) * 100, 1))
```
The dataset for the token-based, corpus approach is taken from the corpus files in the ILC (total size = `r prettyNum(sum(leipzig_size$total_tokens), big.mark = ",")` word-tokens). It is chosen since, to the best of my knowledge, ILC is the only open access source to the largest collection of Indonesian texts^[The alternative is the Indonesian corpus in *Sketch Engine* (SE), which is also from online materials as in ILC. However, SE is a paid service to which the institution I work in does not have paid subscription.] and allows downloading the raw corpus files. ILC mainly consists of randomly chosen websites (`r pull(filter(leipzig_size_sources, sources == "web"), perc_sources)`% of the total size) and online news (`r pull(filter(leipzig_size_sources, sources == "news"), perc_sources)`%), followed by the Wikipedia dumps (`r pull(filter(leipzig_size_sources, sources == "wikipedia"), perc_sources)`%) and a mixture of other sources (`r pull(filter(leipzig_size_sources, sources == "mixed"), perc_sources)`%). As in MPA [@stefanowitsch_words_2006], 1000 random concordance lines were retrieved for each *marah*, *amarah*, and *kemarahan* before manually discarding the irrelevant hits (i.e., duplicates, the predicative and attributive uses of the root *marah*, and the literal uses). Next, syntactically relevant collocations of the target terms with the potential source-domain lexical units (LUs) were manually determined [@stefanowitsch_happiness_2004, 138; @sullivan_frames_2013, 3, 5], adopting the *MetaNet* (MN) approach that integrates MPA with Construction Grammar and Frame Semantics [@sullivan_frames_2013; @oana_computational_2017; see @rajeg_metaphorical_2019 for a recent application to Indonesian]. The MIP was applied to determine whether the collocation of the target terms evoke metaphorical readings. It is determined whether the collocates' contextual meaning, when co-occurring with the [anger]{.smallcaps} terms, contrasts with their more basic meaning in other contexts, such that the "contextual meaning can be understood in comparison to the basic meaning" [@rajeg_metaphorical_2019, 64; @pragglejaz_mip_2007, 3; @sullivan_frames_2013, 36]. The KBBI was used to determine the basic meaning of the collocates with reference to MIP's features of basic meaning, namely "more concrete (what they evoke is easier to imagine, see, hear, feel, smell, and taste), related to bodily action, more precise (as opposed to vague), historically older, and are not necessarily the most frequent meanings" [@pragglejaz_mip_2007, 3]. An additional diagnostic to determine the basic meaning is a question proposed by Soriano [-@soriano_conceptualization_2005, 91]: "what exactly each expression 'was literally about'?". To illustrate, consider these two examples for two different ways to convey the existence of *kemarahan* 'anger'.
(@kemarahan_terjadi) *Kemarahan Presiden Jokowi __terjadi__ saat meninjau Pelabuhan Tanjung Priok (...)* (ind-id_web_2015_3M: 1310067)^[At the end of the numbered example, the source of the example is given in the format "(corpus file name: sentence id)" as in (ind-id_web_2015_3M: 1310067).]
(@kemarahan_datang) *(...) kemarahan itu bisa saja __datang__ dalam waktu yang ditentukan (...)* (ind-id_web_2013_1M: 143884).
Example (@kemarahan_terjadi) is considered literal given the verbal collocate *terjadi* 'happen' represents an abstract event as its basic meaning and, in this collocation with *kemarahan* (another abstract domain), *terjadi* is still understood in the abstract domain of [anger]{.smallcaps} [@croft_domain_2003, 192; @sullivan_frames_2013, 9; @rajeg_metaphorical_2019, 99]. In contrast, the collocation of *kemarahan* as the subject of the verb *datang* 'come' (@kemarahan_datang), having a basic meaning in the domain of physical translational motion, induces the metaphorical "domain mapping" [@croft_domain_2003, 192] and interpretation of the verb in the [anger]{.smallcaps} domain [cf. @sullivan_integrating_2016, 147; @dancygier_figurative_2014, 135]. Such metaphoric interpretation of *datang* emerges due to a mismatch between (i) the semantic type-constraint assigned to the semantic role of its subject (prototypically an animate entity), and (ii) the filler of that role, namely an abstract entity [anger]{.smallcaps} that is literally unable to perform a translational motion [cf. @stickles_formalizing_2016, 194; @sullivan_integrating_2016, 148; @brooke-rose_grammar_1958, 1]. The principles of metaphor-domain evocation in a grammatical construction have been described extensively by Sullivan [-@sullivan_frames_2013; -@sullivan_integrating_2016]. The unclear cases as to whether the tokens are metaphorical or literal were marked as "?" in the database, which is available from https://osf.io/c3p4y/?view_only=50e70ee803fd41ec886547cf33848d49.
The identified metaphorical expressions were then grouped thematically under their metaphorical source domains, adopting the MN approach. MN formalises the central notions in CMT by (i) representing the metaphor-input domains as semantic frames, and (ii) viewing (conceptual) metaphor as unidirectional mappings from the source-domain frames to the target-domain frames (including the mappings between the frame roles) that are mediated via the grammatical constructions [@sullivan_frames_2013; @stickles_formalizing_2016; @croft_connecting_2009]. The closest English equivalence of the Indonesian source-domain LUs guides the choice for the source-domain frames in the English MN Wiki repository^[The *MetaNet* main page: https://metaphor.icsi.berkeley.edu/pub/en/index.php/MetaNet_Metaphor_Wiki. The *MetaNet* frame repository: https://metaphor.icsi.berkeley.edu/pub/en/index.php/Category:Frame] [see @lopez_distinguishing_2011 for a similar approach in Spanish]. The classification also considers the relevant categories from previous studies. The metaphorical mappings within a metaphor are postulated by making use of the available frame roles in each MN frame entry or proposed anew based on the semantics of the source-domain LUs. The metonymic source domains are determined via expressions referring to the physiological effects of emotion.
The *metaphorical salience* measure for a given metaphor in the token-based, corpus approach considers the percentages of:
a. the token frequency of a metaphor
a. the number of metaphorical linguistic expressions of a metaphor
a. the number of metaphorical mappings in a metaphor
The token frequency of a given metaphor is all occurrences of metaphorical expressions evoking the metaphor; the percentage of the total token for a metaphor is calculated from the summed tokens of all metaphors in the database. The same procedure is applied for the percentages of the number of metaphorical linguistic expressions and metaphorical mappings [@kovecses_salience_2015, 344-346].
The metaphorical salience measure in the database for the lexical, type-based approach only considers the number of types of metaphorical linguistic expressions and the number of metaphorical mappings for a given metaphor. It is because the focus of such an approach is to gather the types (not tokens) of metaphorical expressions evoking a given metaphor and the respective metaphorical mappings.
# Type-based salience analyses {#typebased-analysis}
```{r type-based-analysis-computation, message=FALSE, include=FALSE, warning=FALSE, error=FALSE}
source("codes/MARAH-type-based-analysis-code.R")
source("codes/MARAH-token-based-analysis-code.R")
# Another aspect of the token-based, data collection is extracting multiple metaphorical expressions in a single concordance line given that the target-domain term can have more than one relevant syntactic collocation [@sullivan_frames_2013, 135-138; @musolff_variation_2014; @rajeg_metaphorical_2019, 63]. Consider example (@multiple_mpattern):
#
# (@multiple_mpattern) *(...) kerusuhan itu merupakan __hasil dari__ amarah yang __menumpuk__ (...)* (ind_news_2010_300K: 83871)
#
# From this one citation of *amarah*, two metaphorical expressions or patterns are relevant syntactically. First, the noun phrase (NP) *__hasil__ dari amarah* 'the *yield* of anger'. In this NP, the source-domain item *hasil* 'yield' is the head while the target-domain item appears as the complement of the modifying preposition phrase (PP) *dari* 'from'. Second, the relative clause construction *amarah yang __menumpuk__* 'anger that _piles up_/_amasses_' whereby the head noun is the target-domain term while the source-domain item is the verbal head *menumpuk* of the relative clause.
```
## Metaphor {#typebased-metaphor-salience-results}
There are `r numbers2words(nrow(metaphor_typebased_salience))` conceptual metaphors from the type-based, lexical dataset. [Table \@ref(tab:metaphor-table-type-based)](#metaphor-table-type-based) presents the source domains of the metaphors ranked order by their degree of salience values (see the `Aggregate` column).
```{r metaphor-table-type-based}
metaphor_typebased_salience_print %>%
mutate(`Metaphorical source domains` = str_replace(`Metaphorical source domains`, fixed("rough, solid entity"), "substance"), # replace solid entity with substance as per the suggestion from 1st review
`Metaphorical source domains` = str_replace(`Metaphorical source domains`, fixed("degree of control is object dimension"), "degree of controlling anger is size of patience as a container") # replace object dimension with size as per the suggestion from 1st review
) %>%
knitr::kable(caption = "Source domains of [anger]{.smallcaps} (Type-based, lexical approach)", row.names = FALSE)
```
[Table \@ref(tab:metaphor-table-type-based)](#metaphor-table-type-based) shows `r happyr::numbers2words(length(grep(" is ", metaphor_typebased_salience_print[[1]], perl = TRUE)))` metaphors in full, both with the source and target domains, because they are the more general metaphors.
### [Marah is a fierce, captive animal]{.smallcaps} {#animal-typebased}
```{r mapping-animal, message = FALSE, include = FALSE}
mapping_animal <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "fierce")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_restrained|experiencer_restraining)"), "key", "no"))
mapping_animal_stats <- mapping_animal %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_animal_discuss <- get_mappings(metaphor_typebased_mapping, 'fierce') %>% left_join(mapping_animal %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_animal_stats)
# `r paste(paste(get_mappings(metaphor_typebased_mapping, 'fierce')[[2]], "<br><br>", sep = ""), collapse = "")` list of mapping
```
The most salient conceptualisation of anger in the lexical database is [fierce, captive animal]{.smallcaps}, manifesting `r get_salience_stats(metaphor_typebased_salience, "n_type", "fierce, captive")` metaphorical expressions and `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_mapping", "fierce, captive"))` mappings as shown below^[Throughout this paper, the linguistic expressions of each mapping are given below the respective mapping. The mappings with their linguistic expressions are presented in the decreasing order of its number of linguistic type (i.e., the mapping's type frequency), below the foundational mapping(s) of the metaphor; this allows highlighting the central mapping and main meaning focus of the metaphor [@kovecses_metaphor_2010, 140]]. The first two mappings are the foundational mappings underlying each of the metaphorical expressions.
- restrained/captive, fierce animal → anger
- entity who restrains/makes captive the animal → experiencer
- `r mapping_animal_discuss %>% slice_max(order_by = n_lu) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("^(.+)( \\<\\- )(.+)$", "\\1 → \\3")` (type=`r mapping_animal_discuss %>% slice_max(order_by = n_lu) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'aggressive')) %>% pull(LU), "* '", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'aggressive')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`.
- `r mapping_animal_discuss %>% filter(str_detect(MAPPING, 'deliberately')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("^(.+)( \\<\\- )(.+)$", "\\1 → \\3")` (type=`r mapping_animal_discuss %>% filter(str_detect(MAPPING, 'deliberately')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'deliberately')) %>% pull(LU), "* '", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'deliberately')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_animal_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+)\\s\\<\\-\\s(.+)", "\\2 → \\1")` (type=`r mapping_animal_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(LU), "* '", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_animal_discuss %>% filter(str_detect(MAPPING, 'regulating')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+)\\s\\<\\-\\s(.+)", "\\2 → \\1")` (type=`r mapping_animal_discuss %>% filter(str_detect(MAPPING, 'regulating')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'regulating')) %>% pull(LU), "* '", mapping_animal_discuss %>% filter(str_detect(MAPPING, 'regulating')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The main meaning focus of this metaphor is on aggressiveness of the angered person. It is reflected in the mapping [aggressive angry behaviour is aggressive animal behaviour]{.smallcaps} because this mapping is the most productive indicated by the highest number of linguistic types (`r mapping_animal_discuss %>% slice_max(order_by = n_lu) %>% pull(n_lu) %>% unique()`). The [fierce, captive animal]{.smallcaps} is also salient in the corpus approach, but differ in its central mapping and main meaning focus ([§\@ref(animal-tokenbased)](#animal-tokenbased)).
### [Marah is fire]{.smallcaps} {#fire-typebased}
```{r mapping-fire, message = FALSE, include = FALSE}
mapping_fire <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "fire$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_fire|angry-person_burning-object)"), "key", "no"))
mapping_fire_stats <- mapping_fire %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_fire_discuss <- get_mappings(metaphor_typebased_mapping, 'fire$') %>% left_join(mapping_fire %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_fire_stats)
```
The [anger is fire]{.smallcaps} metaphor is the second most salient in the type-based dataset (`r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'fire'))` types and `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'fire'))` mappings). Rajeg [-@rajeg_metafora_2013] identified a statistically significant association between [fire]{.smallcaps} and anger in Indonesian.
- fire → anger
- burning object → angry person
- `r mapping_fire_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+)\\sis\\s(.+)", "\\2 → \\1") %>% str_replace_all("the highest degree of", "intensity of") %>% str_replace(" intensity$", "")` (type=`r mapping_fire_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_fire_discuss %>% filter(str_detect(MAPPING, 'highest degree')) %>% pull(LU), "* '", mapping_fire_discuss %>% filter(str_detect(MAPPING, 'highest degree')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_fire_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+)\\s\\<\\-\\s(.+)", "\\2 → \\1")` (type=`r mapping_fire_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_fire_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(LU), "* '", mapping_fire_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_fire_discuss %>% filter(str_detect(MAPPING, 'causing')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+)\\s\\<\\-\\s(.+)", "\\2 → \\1")` (type=`r mapping_fire_discuss %>% filter(str_detect(MAPPING, 'causing')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_fire_discuss %>% filter(str_detect(MAPPING, 'causing anger')) %>% pull(LU), "* '", mapping_fire_discuss %>% filter(str_detect(MAPPING, 'causing anger')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
Based on the number of the linguistic expressions, the meaning focus of the metaphor is on the increased intensity of anger, which is the same in the token-based dataset ([§\@ref(fire-tokenbased)](#fire-tokenbased)).
### [Cause of anger is physical contact/harm]{.smallcaps} {#harm-typebased}
```{r mapping-harm, message = FALSE, include = FALSE}
mapping_harm <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "harm$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(person_harmed)"), "key", "no"))
mapping_harm_stats <- mapping_harm %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_harm_discuss <- get_mappings(metaphor_typebased_mapping, 'harm$') %>% left_join(mapping_harm %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_harm_stats)
```
This metaphor is a sub-case of the [emotional effect is physical contact]{.smallcaps} metaphor [see @lakoff_metaphors_1980, 50] and is the third most salient metaphor for anger with `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'physical contact'))` types and `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'physical contact'))` mappings.
- harmed/entity in contact → person('s body)
- `r mapping_harm_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_harm_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_harm_discuss %>% filter(str_detect(MAPPING, 'causing anger')) %>% pull(LU), "* '", mapping_harm_discuss %>% filter(str_detect(MAPPING, 'causing anger')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_harm_stats %>% slice_min(order_by = n_lu) %>% pull(MAPPING) %>% gsub(x = ., pattern = "-", replacement = " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_harm_stats %>% slice_min(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_harm_discuss %>% filter(str_detect(MAPPING, 'effect.of.touch')) %>% pull(LU), "* '", mapping_harm_discuss %>% filter(str_detect(MAPPING, 'effect.of.touch')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The [physical harm/contact]{.smallcaps} metaphor focuses on the cause of anger, conceptualised as physical touching or harm to a person and/or the person’s body. In the token-based dataset ([§\@ref(harm-tokenbased)](#harm-tokenbased)), this metaphor ranks very low (rank `r get_metaphor_salience_rank(metaphor_salience, 'physical contact')`), and highlights a different aspect.
### [Marah is disease]{.smallcaps} {#disease-typebased}
```{r mapping-disease, message = FALSE, include = FALSE}
mapping_disease <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "disease$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(person_patient)"), "key", "no"))
mapping_disease_stats <- mapping_disease %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_disease_discuss <- get_mappings(metaphor_typebased_mapping, 'disease$') %>% left_join(mapping_disease %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_disease_stats)
```
The [anger is disease]{.smallcaps} metaphor is realised by `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_type", "disease"))` types and `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_mapping", "disease"))` different mappings. The productivity of the mappings suggests that the metaphor focuses on the undesirability and effect of anger as a disease.
- patient → angry person
- disease → anger (*gondok* 'goitre')
- `r mapping_disease_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% gsub(x = ., pattern = "-", replacement = " ") %>% gsub(x = ., pattern = "(.+)_(.+)", replacement = "\\2 → \\1")` (type=`r mapping_disease_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_disease_discuss %>% filter(str_detect(MAPPING, 'undesirability')) %>% pull(LU), "* '", mapping_disease_discuss %>% filter(str_detect(MAPPING, 'undesirability')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_disease_discuss %>% filter(str_detect(MAPPING, 'effect')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_disease_discuss %>% filter(str_detect(MAPPING, 'effect')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_disease_discuss %>% filter(str_detect(MAPPING, 'effect')) %>% pull(LU), "* '", mapping_disease_discuss %>% filter(str_detect(MAPPING, 'effect')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_disease_discuss %>% filter(str_detect(MAPPING, 'calm')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_disease_discuss %>% filter(str_detect(MAPPING, 'calm')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_disease_discuss %>% filter(str_detect(MAPPING, 'calm')) %>% pull(LU), "* '", mapping_disease_discuss %>% filter(str_detect(MAPPING, 'calm')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ") %>% str_replace(fixed("; to treat s.o."), "")`
In the token-based dataset, the [disease]{.smallcaps} metaphor does not make into the top-20 most salient metaphors (rank `r get_metaphor_salience_rank(metaphor_salience, 'disease')`; token=`r get_salience_stats(metaphor_salience, "n_token", "disease")`; type=`r get_salience_stats(metaphor_salience, "n_type", "disease")`; mapping=`r get_salience_stats(metaphor_salience, "n_mapping", "disease")`). This indicates that the two different methods can complement one another to highlight the salient metaphor of a target domain.
### [Marah is insanity]{.smallcaps} {#insanity-typebased}
```{r mapping-insanity, message = FALSE, include = FALSE}
mapping_insanity <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "insanity$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(angry-person_insane-person|anger_insanity)"), "key", "no"))
mapping_insanity_stats <- mapping_insanity %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_insanity_discuss <- get_mappings(metaphor_typebased_mapping, 'insanity$') %>% left_join(mapping_insanity %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_insanity_stats)
```
Kövecses [-@kovecses_metaphors_1986, 20-22] proposes that the [insanity]{.smallcaps} metaphor is one of the principal metaphors for anger [see also @holland_cognitive_1987, 204-205]. It appears to be the case for Indonesian in the type-based analysis since it ranks in the top-5 list. All expressions (type=`r get_salience_stats(metaphor_typebased_salience, "n_type", "insanity")`) evoke the following mappings.
- `r mapping_insanity %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[1] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_insanity %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[2] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(LU), "* '", mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'uncontrolled')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'uncontrolled')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'uncontrolled')) %>% pull(LU), "* '", mapping_insanity_discuss %>% filter(str_detect(MAPPING, 'uncontrolled')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The metaphor focuses on the control aspect. Particularly, the experiencer has become "completely incapacitated cognitively as well as in terms of behavior" [@kovecses_metaphor_2000, 74] and exhibits insane behaviours (the third and fourth mappings from the top). This implies that anger is an intense emotion forcing the experiencer to lose all controls. The [insanity]{.smallcaps} metaphor is also found in the token-based dataset but much less prominent (rank `r get_metaphor_salience_rank(metaphor_salience, "insanity")`) and has a lower number of types (`r get_salience_stats(metaphor_salience, "n_type", "insanity")`), despite the same number of mappings. Rajeg [-@rajeg_metafora_2013, 111] also found only one token for the [insanity]{.smallcaps} metaphor (*[exp]{.smallcaps} __mabuk karena__ amarah* '[exp]{.smallcaps} be _drunk with_ anger').
### [Marah is a pressurised substance in a container]{.smallcaps} {#pressurised-typebased}
```{r mapping-pressurised-substance, message = FALSE, include = FALSE}
mapping_pressurisedfluid <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "pressurised substance in a container$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_contents/located-entity|angry person\\'s body)"), "key", "no"))
mapping_pressurisedfluid_stats <- mapping_pressurisedfluid %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_pressurisedfluid_discuss <- get_mappings(metaphor_typebased_mapping, 'pressurised substance in a container$') %>% left_join(mapping_pressurisedfluid %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_pressurisedfluid_stats)
```
The [pressurised substance in a container]{.smallcaps} is part of the [substance/containment]{.smallcaps} family of metaphors and found to be statistically central for anger in Indonesian [@rajeg_metafora_2013, 211]. The metaphor is based on the lexical units (LUs) evoking two MN frames, the [pressure in a container]{.smallcaps} (see the fourth mapping from the top below) and the [(caused) upward motion]{.smallcaps} frames (the third and fifth mappings) and realises `r metaphor_typebased_salience %>% filter(str_detect(metaphor, "pressurised")) %>% pull(n_type) |> numbers2words()` types of metaphorical expressions and `r metaphor_typebased_salience %>% filter(str_detect(metaphor, "pressurised")) %>% pull(n_mapping) |> numbers2words()` mappings presented below.
- `r mapping_pressurisedfluid %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[1] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_pressurisedfluid %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[2] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_pressurisedfluid_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_pressurisedfluid_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'caused to')) %>% pull(LU), "* '", mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'caused to')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(LU), "* '", mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'losing control')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_pressurisedfluid_stats %>% filter(str_detect(MAPPING, "causing increased")) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_pressurisedfluid_stats %>% filter(str_detect(MAPPING, "causing increased")) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'causing increased')) %>% pull(LU), "* '", mapping_pressurisedfluid_discuss %>% filter(str_detect(MAPPING, 'causing increased')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The predominant metaphorical expressions show that anger is conceptualised as the blood substance, being increased/raised due to high pressure as captured in the third and fifth mappings. These mappings reveal the main meaning focus of (caused) increased intensity of the experienced anger and are related to the generic metaphor [intensity is verticality/height]{.smallcaps} ([§\@ref(verticality-typebased)](#verticality-typebased)). The inability to control such an increase makes the person explode (the fourth mapping). In the corpus dataset ([§\@ref(pressurised-tokenbased)](#pressurised-tokenbased)), it is also ranked in the top 10.
### [(Cause of) anger is annoyance]{.smallcaps} {#annoyance-typebased}
```{r mapping-annoyance, message = FALSE, include = FALSE}
mapping_annoyance <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "annoyance$")) %>%
mutate(status = if_else(str_detect(MAPPING, "([(]un[)]hidden\\-object)"), "key", "no"))
mapping_annoyance_stats <- mapping_annoyance %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_annoyance_discuss <- get_mappings(metaphor_typebased_mapping, 'annoyance$') %>% left_join(mapping_annoyance %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_annoyance_stats)
```
The metaphor predominantly captures the cause of anger based on metaphorical expressions referring to various physical and psychological disturbance manifested in the `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'annoyance'))` mappings below. This metaphor is only identified in the lexical dataset.
- `r mapping_annoyance_stats %>% filter(str_detect(MAPPING, "cause.of.anger.annoyance")) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_annoyance_stats %>% filter(str_detect(MAPPING, "cause.of.anger.annoyance")) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_annoyance_discuss %>% filter(str_detect(MAPPING, 'cause.of')) %>% pull(LU), "* '", mapping_annoyance_discuss %>% filter(str_detect(MAPPING, 'cause.of')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_annoyance_stats %>% filter(str_detect(MAPPING, "irritated.person")) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_annoyance_stats %>% filter(str_detect(MAPPING, "irritated.person")) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_annoyance_discuss %>% filter(str_detect(MAPPING, 'irritated.person')) %>% pull(LU), "* '", mapping_annoyance_discuss %>% filter(str_detect(MAPPING, 'irritated.person')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_annoyance_stats %>% filter(str_detect(MAPPING, "person.causing.anger")) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_annoyance_stats %>% filter(str_detect(MAPPING, "person.causing.anger")) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_annoyance_discuss %>% filter(str_detect(MAPPING, 'person.causing')) %>% pull(LU), "* '", mapping_annoyance_discuss %>% filter(str_detect(MAPPING, 'person.causing')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
Several types refer to generic annoyances/disturbances (e.g., *pengacauan* 'disturbance', *gangguan* 'hindrance', *pengacau* 'agitator'); they can refer to physical or psychological annoyances and are underspecified for the degree of affectedness. The effect of *salah penerimaan* 'wrong reception' could be considered as a psychological annoyance. There are specific verbal and nominal patterns based on the noun root *bawang* 'shallot; onion'. The motivation behind the choice of *bawang* could be the irritation of the eyes (leading to the production of tears) that it causes when someone chops it. The physical irritation caused by interacting with shallot/onion is mapped onto the cause of anger.
### [Marah is bitterness]{.smallcaps} {#bitterness-typebased}
```{r mapping-bitterness, message = FALSE, include = FALSE}
mapping_bitterness <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "bitterness$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_bitterness|person-tasting)"), "key", "no"))
mapping_bitterness_stats <- mapping_bitterness %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_bitterness_discuss <- get_mappings(metaphor_typebased_mapping, 'bitterness$') %>% left_join(mapping_bitterness %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_bitterness_stats)
```
This metaphor is manifested into `r metaphor_typebased_salience %>% filter(str_detect(metaphor, "bitterness")) %>% pull(n_type) %>% numbers2words()` metaphorical expressions reflecting `r metaphor_typebased_salience %>% filter(str_detect(metaphor, "bitterness")) %>% pull(n_mapping) %>% numbers2words()` metaphorical mappings. The metaphor is based on LUs evoking the MN [taste]{.smallcaps} frame.
- `r mapping_bitterness %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[1] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_bitterness %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[2] %>% str_replace_all("-", " ") %>% str_replace_all("_", " <- ") %>% str_replace_all("^(.+)( \\<\\- )(.+)$", "\\1 → \\3")`
- `r mapping_bitterness_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("([^_]+)_([^_]+)", "\\1 → \\2")` (type=`r mapping_bitterness_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_bitterness_discuss %>% filter(str_detect(MAPPING, 'undesirability')) %>% pull(LU), "* '", mapping_bitterness_discuss %>% filter(str_detect(MAPPING, 'undesirability')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_bitterness_stats %>% slice_min(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_bitterness_stats %>% slice_min(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_bitterness_discuss %>% filter(str_detect(MAPPING, 'reduced')) %>% pull(LU), "* '", mapping_bitterness_discuss %>% filter(str_detect(MAPPING, 'reduced')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ") %>% str_replace_all("[()]", "")`
The third mapping has the predominant linguistic expressions. This indicates that the [bitterness]{.smallcaps} metaphor highlights undesirability of anger, reflecting the negative evaluation of it. The final mapping suggests that the bitterness could be reduced (i.e., turned into a plainer taste), which is mapped onto reducing the undesirability (and perhaps the intensity) of anger. In the corpus dataset, the metaphor is also attested but not salient as it sits in rank `r get_metaphor_salience_rank(metaphor_salience, 'bitternes')` out of the total `r nrow(metaphor_salience)` metaphors found ([Table \@ref(tab:metaphor-table-token-based)](#metaphor-table-token-based)). Rajeg's [-@rajeg_metafora_2013] work also did not identify this metaphor for anger in his literary corpus.
### [Marah is heated fluid in a container]{.smallcaps} {#hotfluid-typebased}
```{r mapping-hotfluid, message = FALSE, include = FALSE}
mapping_hotfluid <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "heated")) %>%
mutate(status = if_else(str_detect(MAPPING, "angry-person_container"), "key", "no"),
status = if_else(MAPPING == "anger_(heated-)fluid", "key", status))
mapping_hotfluid_stats <- mapping_hotfluid %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_hotfluid_discuss <- get_mappings(metaphor_typebased_mapping, 'heated') %>% left_join(mapping_hotfluid %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_hotfluid_stats)
```
This is a heated variant of the [contained substance]{.smallcaps} metaphor ([§\@ref(contained-substance-typebased)](#contained-substance-typebased)), incorporating the semantics of the MN [heated fluid]{.smallcaps} frame. The [heated fluid in a container]{.smallcaps} is one of the distinctive metaphors for anger in Indonesian [@rajeg_metafora_2013]. In the lexical database, this metaphor is not too salient, represented only by `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'heated fluid'))` types of metaphorical expressions, and `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'heated fluid'))` mappings, two of which are the foundational mappings.
- heated fluid → anger
- the container → angry person
- `r mapping_hotfluid_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_hotfluid_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_hotfluid_discuss %>% filter(str_detect(MAPPING, 'heat\\-level')) %>% pull(LU), "* '", mapping_hotfluid_discuss %>% filter(str_detect(MAPPING, 'heat\\-level')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_hotfluid_stats %>% slice_min(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_hotfluid_stats %>% slice_min(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_hotfluid_discuss %>% filter(str_detect(MAPPING, 'being caused to')) %>% pull(LU), "* '", mapping_hotfluid_discuss %>% filter(str_detect(MAPPING, 'being caused to')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The predominant number of metaphorical expressions reveals that the metaphor highlights the high degree of intensity. This is conceptualised as a boiling substance. The final mapping also pertains to intensity, particularly the increasing degree of heat of the substance.
### [Intensity is verticality/height]{.smallcaps} {#verticality-typebased}
```{r mapping-verticality, message = FALSE, include = FALSE}
mapping_verticality <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "verticality$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_verticality-scale)"), "key", "no"))
mapping_verticality_stats <- mapping_verticality %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_verticality_discuss <- get_mappings(metaphor_typebased_mapping, 'verticality$') %>% left_join(mapping_verticality %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_verticality_stats)
```
This is a generic, orientational metaphor based on the [(caused) upward motion]{.smallcaps} and the [verticality scale]{.smallcaps} frames. Rajeg [-@rajeg_metafora_2013, 212] identified the significant statistical association of this metaphor with anger. The metaphor is realised in `r numbers2words(pull(filter(metaphor_typebased_salience, metaphor == "intensity of anger is verticality"), n_type))` expressions evoking `r numbers2words(pull(filter(metaphor_typebased_salience, metaphor == "intensity of anger is verticality"), n_mapping))` mappings.
- `r mapping_verticality %>% filter(status == 'key') %>% select(MAPPING) %>% distinct() %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("_", " <- ") %>% paste(collapse = "; ") %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → intensity of \\1")`
- `r mapping_verticality_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_verticality_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_verticality_discuss %>% filter(str_detect(MAPPING, 'upward motion')) %>% pull(LU), "* '", mapping_verticality_discuss %>% filter(str_detect(MAPPING, 'upward motion')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_verticality_stats %>% filter(str_detect(MAPPING, "less intensity")) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_verticality_stats %>% filter(str_detect(MAPPING, "less intensity")) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_verticality_discuss %>% filter(str_detect(MAPPING, "less intensity")) %>% pull(LU), "* '", mapping_verticality_discuss %>% filter(str_detect(MAPPING, "less intensity")) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The main meaning focus is on the increasing intensity of anger (without necessarily reaching the highest end of the scale). This is evident from the most productive mapping evoking the [(caused) upward motion]{.smallcaps} frame. The least frequent mapping indicates short-lived, low-intensity anger since the linguistic expression refers to anger not reaching the endpoint of the scale (*marah __tiada sampai__* 'short-lived anger; lit. anger not reaching the endpoint of a scale').
### [Marah is a contained substance]{.smallcaps} {#contained-substance-typebased}
This is a short-hand label for the [emotion is substance in a container]{.smallcaps} metaphor. The metaphor is realised in `r numbers2words(pull(filter(metaphor_typebased_salience, metaphor == "anger is substance in a container"), n_type))` metaphorical expressions evoking `r numbers2words(pull(filter(metaphor_typebased_salience, metaphor == "anger is substance in a container"), n_mapping))` mappings. It is also found to be statistically associated with anger in Indonesian [@rajeg_metafora_2013, 211-212].
```{r mapping-containedfluid, message = FALSE, include = FALSE}
mapping_containedfluid <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "is substance in a container$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_contents/located-entity)") & LU != "darah muda", "key", "no"),
status = if_else(str_detect(MAPPING, "angry-person_container"), "key", status),
status = if_else(str_detect(MAPPING, "(anger-level_substance-fullness-level)"), "key", status))
mapping_containedfluid_stats <- mapping_containedfluid %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_containedfluid_discuss <- get_mappings(metaphor_typebased_mapping, 'is substance in a container$') %>% left_join(mapping_containedfluid %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_containedfluid_stats)
```
- `r mapping_containedfluid %>% filter(status == 'key') %>% select(MAPPING) %>% distinct() %>% pull(MAPPING) %>% .[2] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_containedfluid %>% filter(status == 'key') %>% select(MAPPING) %>% distinct() %>% pull(MAPPING) %>% .[3] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_containedfluid_stats %>% filter(str_detect(MAPPING, "located.entity")) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_containedfluid_stats %>% filter(str_detect(MAPPING, "located.entity")) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_containedfluid_discuss %>% filter(str_detect(MAPPING, "located.entity")) %>% pull(LU), "* '", mapping_containedfluid_discuss %>% filter(str_detect(MAPPING, "located.entity")) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_containedfluid_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_containedfluid_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_containedfluid_discuss %>% filter(str_detect(MAPPING, 'channel+ing')) %>% pull(LU), "* '", mapping_containedfluid_discuss %>% filter(str_detect(MAPPING, 'channel+ing')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The last mapping is the most productive. It indicates the main meaning focus of the metaphor, namely externalisation/expression of anger construed as releasing the substance, based on the LUs evoking the [release liquid]{.smallcaps} frame. ([§\@ref(contained-substance-typebased)](#contained-substance-tokenbased)). This focus implies the inability to keep the anger inside.
The metaphor is part of the [substance/containment]{.smallcaps} source frames family postulated in the database. The other source frames are [heated fluid in a container]{.smallcaps} ([§\@ref(hotfluid-typebased)](#hotfluid-typebased)) and [pressurised substance in a container]{.smallcaps} ([§\@ref(pressurised-typebased)](#pressurised-typebased)). The difference between the [contained substance]{.smallcaps} metaphor and the [heated fluid]{.smallcaps} or the [pressurised substance]{.smallcaps} variants is that the former lacks the heated and pressurised semantics of the frames. The intensity in the [contained substance]{.smallcaps} metaphor is construed via the quantity of the substance, and the expression of anger is captured via the externalisation of the substance.
### [Degree of controlling anger is the size of patience as a container]{.smallcaps} {#patience}
```{r mapping-dimension, message = FALSE, include = FALSE}
mapping_dimension <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "dimension$")) %>%
mutate(status = if_else(str_detect(MAPPING, "anger_entity"), "key", "no"))
mapping_dimension_stats <- mapping_dimension %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_dimension_discuss <- get_mappings(metaphor_typebased_mapping, 'dimension$') %>% left_join(mapping_dimension %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_dimension_stats)
```
The [size-]{.smallcaps}/[dimension-]{.smallcaps}related metaphor is based on LUs referring to the [size]{.smallcaps} frame. It represents a generic though different nuance to capture emotional control from the previous metaphors focusing on the same aspect. There are `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'dimension'))` metaphorical expressions and `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'dimension'))` mappings for the metaphor as shown below.
- physical entity → anger
- `r mapping_dimension_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_dimension_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_dimension_discuss %>% filter(str_detect(MAPPING, 'narrow')) %>% pull(LU), "* '", mapping_dimension_discuss %>% filter(str_detect(MAPPING, 'narrow')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
The metaphorical expressions reveal the main meaning focus of inability to control anger. The size/dimension of the object could be viewed as the level of patience/calmness. The inferential aspect mapped from the source frame is that when this patience metaphorically shrinks, the person is no longer calm (i.e., unable to control the emotion) but becoming emotional (i.e., angry). This is a different inference in the use of the [size]{.smallcaps} frame for the intensity level of anger, which is only found in the corpus data ([§\@ref(quantity-tokenbased)](#quantity-tokenbased)).
### [Marah is a natural force]{.smallcaps} {#natural-force-typebased}
```{r mapping-naturalforce, message = FALSE, include = FALSE}
mapping_naturalforce <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "natural force$")) %>%
mutate(status = if_else(str_detect(MAPPING, "anger_natural-disaster"), "key", "no"))
mapping_naturalforce_stats <- mapping_naturalforce %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_naturalforce_discuss <- get_mappings(metaphor_typebased_mapping, 'natural force$') %>% left_join(mapping_naturalforce %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_naturalforce_stats)
```
This metaphor is based on metaphorical expressions referring to the [natural disaster]{.smallcaps} frame, a sub-case of the [harm]{.smallcaps} frame family in the MN frame repository. The metaphor is found to be strongly associated with anger [@rajeg_metafora_2013, 213]. The lexical dataset reveals only `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'natural force'))` types of expressions evoking `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'natural force'))` mappings.
- natural disaster → anger
- intensity of the natural force → intensity of anger (type=1)
- *angin-anginan* 'windy; capricious; unpredictable'
- `r mapping_naturalforce_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1 ")` (type=`r mapping_naturalforce_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_naturalforce_discuss %>% filter(str_detect(MAPPING, 'to cease')) %>% pull(LU), "* '", mapping_naturalforce_discuss %>% filter(str_detect(MAPPING, 'to cease')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_naturalforce_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_naturalforce_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(n_lu) %>% unique()`)
- `r paste(paste("*", mapping_naturalforce_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(LU), "* '", mapping_naturalforce_discuss %>% filter(str_detect(MAPPING, 'ceasing')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ") %>% str_replace_all("[(]", "[") %>% str_replace_all("[)]", "]") %>% str_replace_all(".calm down.+(?=subside)", "'")`
The metaphorical expressions particularly highlight the ceasing intensity of the forces, suggesting the main meaning focus on the intensity of anger. The similar theme is found in the corpus study ([§\@ref(naturalforce-tokenbased)](#naturalforce-tokenbased)).
### [Marah is a substance]{.smallcaps} {#solid-typebased}
```{r mapping-solid, message = FALSE, include = FALSE}
mapping_solid <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "rough, solid entity$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_entity|degree.of.solidity)"), "key", "no"))
mapping_solid_stats <- mapping_solid %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_solid_discuss <- get_mappings(metaphor_typebased_mapping, 'rough, solid entity$') %>% left_join(mapping_solid %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_solid_stats)
```
This [object]{.smallcaps}-related metaphor captures the intensity of anger in terms of object's (or substance's) firmness/solidity. The metaphor is realised by `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'solid'))` metaphorical expressions and consists of `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'solid'))` mappings.
- `r mapping_solid %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[1] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_solid %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% .[2] %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`
- `r mapping_solid_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_solid_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`) (`r paste(paste("*", mapping_solid_discuss %>% filter(str_detect(MAPPING, 'calmness')) %>% pull(LU), "* '", mapping_solid_discuss %>% filter(str_detect(MAPPING, 'calmness')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`)
- melting ice → the reduction of anger (type=1) (*mencair* 'no longer being angry; lit. to melt')
The metaphorical expressions evoke two frames related to the [firmness]{.smallcaps} frame. The first one is the [lax]{.smallcaps} frame (see the third mapping from the top above), which is in a scalar opposition to the [firm]{.smallcaps} frame. The second frame is the [liquid]{.smallcaps} (the last mapping), capturing the fact that a solid entity (e.g., an ice block) can be pliable like a liquid. All metaphorical expressions focus on reduced intensity.
### [Marah is an (un)veiled object]{.smallcaps} {#hidden-typebased}
```{r mapping-hidden, message = FALSE, include = FALSE}
mapping_hidden <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "veiled object$")) %>%
mutate(status = if_else(str_detect(MAPPING, "([(]un[)]hidden\\-object)"), "key", "no"))
mapping_hidden_stats <- mapping_hidden %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_hidden_discuss <- get_mappings(metaphor_typebased_mapping, 'veiled object$') %>% left_join(mapping_hidden %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_hidden_stats)
```
This metaphor is realised by `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_type", "veiled"))` types of expressions, manifesting `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_mapping", "veiled"))` mappings. They evoke the [hiding]{.smallcaps} frame (the second mapping from the top below) and [caused upward motion]{.smallcaps} frame (the third mapping).
- `r mapping_hidden %>% filter(status == "key") %>% pull(MAPPING) %>% unique() %>% str_replace_all("[-]", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")`.
- `r mapping_hidden_stats %>% slice_max(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1")` (type=`r mapping_hidden_stats %>% slice_max(order_by = n_lu) %>% pull(n_lu)`)
- `r paste(paste("*", mapping_hidden_discuss %>% filter(str_detect(MAPPING, 'hiding')) %>% pull(LU), "* '", mapping_hidden_discuss %>% filter(str_detect(MAPPING, 'hiding')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`
- `r mapping_hidden_stats %>% slice_min(order_by = n_lu) %>% pull(MAPPING) %>% str_replace_all("(.+) is (.+)", "\\2 → \\1") %>% str_replace(fixed("i.e."), "i.e.,")` (type=`r mapping_hidden_stats %>% slice_min(order_by = n_lu) %>% pull(n_lu)`) (`r paste(paste("*", mapping_hidden_discuss %>% filter(str_detect(MAPPING, 'unveiling')) %>% pull(LU), "* '", mapping_hidden_discuss %>% filter(str_detect(MAPPING, 'unveiling')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`)
The [(un)veiled object]{.smallcaps} metaphor relates to the social expression and degree of control of the experiencer to hide or expose the anger. The focus of the metaphor, based on the predominant metaphorical expressions, is hiding the anger. The corpus study ([§\@ref(unveiled-tokenbased)](#unveiled-tokenbased)), however, reveals a different meaning focus of the metaphor.
### [Marah is heat]{.smallcaps} {#heat-typebased}
```{r mapping-heat, message = FALSE, include = FALSE}
mapping_heat <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "heat$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_heat)"), "key", "no"))
mapping_heat_stats <- mapping_heat %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_heat_discuss <- get_mappings(metaphor_typebased_mapping, 'heat$') %>% left_join(mapping_heat %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_heat_stats)
```
[Heat]{.smallcaps} is considered to be a central, embodied source frame for anger in previous works [e.g., @kovecses_metaphors_1986; @holland_cognitive_1987; but cf. @delbecque_anger_2005 for the cultural perspective based on diachronic evidence in the history of the English language]. It is proposed as the basis for two specific metaphors, namely [anger is fire]{.smallcaps} ([§\@ref(fire-typebased)](#fire-typebased) and [\@ref(fire-tokenbased)](#fire-tokenbased)) and [anger is heated fluid in a container]{.smallcaps} ([§\@ref(hotfluid-typebased)](#hotfluid-typebased) and [\@ref(hotfluid-tokenbased)](#hotfluid-tokenbased)). This study found that the generic [heat]{.smallcaps} metaphor is not salient, being realised only by `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'heat$'))` metaphorical expressions manifesting `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'heat$'))` mappings as follows:
- heat → anger
- `r mapping_heat_stats %>% filter(str_detect(MAPPING, "heated\\-entity$")) %>% pull(MAPPING) %>% str_replace_all("-", " ") %>% str_replace_all("(.+)_(.+)", "\\2 → \\1")` (type=`r mapping_heat_stats %>% filter(str_detect(MAPPING, "heated\\-entity$")) %>% pull(n_lu)`) (`r paste(paste("*", mapping_heat_discuss %>% filter(str_detect(MAPPING, 'heated\\-entity')) %>% pull(LU), "* '", mapping_heat_discuss %>% filter(str_detect(MAPPING, 'heated\\-entity')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`)
- `r mapping_heat_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(MAPPING2) %>% unique() %>% str_replace_all("(.+) \\<\\- (.+)", "\\2 → \\1")` (type=`r mapping_heat_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(n_lu) %>% unique()`) (`r paste(paste("*", mapping_heat_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(LU), "* '", mapping_heat_discuss %>% filter(str_detect(MAPPING, 'becoming')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`)
The difference between the [heat]{.smallcaps} metaphor in the lexical approach, and the [temperature]{.smallcaps} metaphor in the corpus approach is as follows. The former focuses on the characteristic of easily angered person as always hot, reflected by the linguistic expressions that do not encode any reduction of the heat. Meanwhile, the latter (i.e., [temperature]{.smallcaps}) highlights the dynamics of the intensity when being angry, namely, (i) can be reduced (i.e., cooled off) or (ii) reaching the highest temperature; this is supported by the linguistic expression referring to coolness. In the MN frame repository, [heat]{.smallcaps} is a different frame and considered as a perspective of the [temperature]{.smallcaps} frame, which covers the range of temperature scale (from hot to cold). The [heat]{.smallcaps} frame itself is also linked to the [cold]{.smallcaps} frame via "in scalar opposition to" relation.
### [Marah is a sleeping organism]{.smallcaps} {#awakening-typebased}
```{r mapping-sleeping, message = FALSE, include = FALSE}
mapping_sleeping <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "sleeping organism$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_slepping\\-entity$)"), "key", "no"))
mapping_sleeping_stats <- mapping_sleeping %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_sleeping_discuss <- get_mappings(metaphor_typebased_mapping, 'sleeping$') %>% left_join(mapping_sleeping %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_sleeping_stats)
```
This metaphor is based on the [awakening]{.smallcaps} frame in which anger is mapped onto the inactive/calm sleeping organism role in the frame [cf. @stefanowitsch_words_2006, 76-77]. There are only `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_type", "sleeping"))` metaphorical expressions evoking the following `r numbers2words(get_salience_stats(metaphor_typebased_salience, "n_mapping", "sleeping"))` mappings:
- sleeping organism → anger
- awakening/fishing out the organism → causing anger (*__membangkitkan__ marah* 'to _arouse_ one's anger')
- awaken entity → anger near the limit (*__bangkit__ amarah* 'anger *rose*')
The metaphorical expressions suggest the causation and onset of anger. From one perspective, the [sleeping organism]{.smallcaps} metaphor could be viewed as a pre-cursor, or a part, of the [fierce, captive animal]{.smallcaps} metaphor where the awakened organism/animal has been in a fierce and aggressive behaviour (e.g., due to being awakened/disturbed).
The [awakening]{.smallcaps} frame, and in combination with the [fierce animal]{.smallcaps} frame in [anger is fierce, captive animal]{.smallcaps}, is also reflected in the common Indonesian proverb for anger *__membangunkan__ macan tidur* 'to *awaken* a sleeping tiger'. The verb *membangunkan* 'to awaken; to wake s.b. up' and *tidur* '(a)sleep' evoke the [awakening]{.smallcaps} frame, meanwhile *macan* 'tiger' evokes the [fierce animal]{.smallcaps} frame. The proverb highlights the danger of invoking anger out of a calm state.
### [Marah is possession]{.smallcaps}
This is not a prominent metaphor in the lexical approach as it is realised by only one type (*ambil* 'take'), evoking the [gain possession]{.smallcaps} frame:
(@typebased_gain-possession) *Jangan __ambil__ marah* 'Do not _take_ the anger' (Stevens Schimdgal Tellings 2004: 30)
This example means that the person should stay calm by not taking the anger object into his/her possession, implying a negative valence of possessing an anger-object. The mappings inferred from (@typebased_gain-possession) are as follows:
- possessable object → anger
- (candidate) possessor → experiencer
- taking/gaining the possessable object → becoming angry
The low salience of the [possession]{.smallcaps} metaphor family is not surprising given that Rajeg [-@rajeg_metafora_2013, 213-214] found the metaphor's statistically significant dissociation with anger ([§\@ref(intro)](#intro)).
### [Marah is darkness]{.smallcaps} {#darkness-typebased}
```{r mapping-darkness, message = FALSE, include = FALSE}
mapping_darkness <- filter(metaphor_typebased_mapping, str_detect(CM_BROADER, "darkness$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(anger_darkness$)"), "key", "no"))
mapping_darkness_stats <- mapping_darkness %>% filter(status == 'no') %>% group_by(MAPPING) %>% summarise(n_lu = n_distinct(LU))
mapping_darkness_discuss <- get_mappings(metaphor_typebased_mapping, 'darkness$') %>% left_join(mapping_darkness %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_darkness_stats)
#(@typebased_darkness-1) `r metaphor_typebased %>% filter(str_detect(CM_BROADER, 'darkness'), LU == "kegelapan") %>% pull(CITATIONS)` (`r metaphor_typebased %>% filter(str_detect(CM_BROADER, 'darkness'), LU == "kegelapan") %>% pull(SOURCES)`: `r metaphor_typebased %>% filter(str_detect(CM_BROADER, 'darkness'), LU == "kegelapan") %>% pull(PAGE_LOCATION)`)
```
This metaphor is based on LUs from the [darkness]{.smallcaps} frame and is evoked by `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_type', 'darkness'))` types manifesting `r numbers2words(get_salience_stats(metaphor_typebased_salience, 'n_mapping', 'darkness'))` mappings as follows:
- darkness → anger
- person(’s body) being in darkness → angry person (type=`r unique(pull(filter(mapping_darkness_discuss, str_detect(MAPPING2, "person being in the dark state")), n_lu))`) (`r paste(paste("*", mapping_darkness_discuss %>% filter(str_detect(MAPPING, 'dark.state')) %>% pull(LU), "* '", mapping_darkness_discuss %>% filter(str_detect(MAPPING, 'dark.state')) %>% pull(LU_GLOSS), "'", sep = ""), collapse = ", ")`)
Semantically, the metaphor highlights the negative assessment of anger [@stefanowitsch_words_2006, 77]. One prototypical example of the negative effect of a person being in the dark is inability to see (and by extension, to think) clearly (or rationally) (cf. [§\@ref(visual-interference-typebased)](#visual-interference-typebased)).
## Type-based salience: Metonymy {#typebased-metonymy-salience-results}
There are `r sum(metonymy_typebased_salience$n_type)` types of metonymic expressions for [anger]{.smallcaps} grouped under `r numbers2words(nrow(metonymy_typebased_salience))` (conceptual) metonymies. The metonymies are rank ordered in [Table \@ref(tab:metonymy-table-type-based)](#metonymy-table-type-based) by the number of their metonymic expressions.
```{r metonymy-category-typebased}
physiological_response_regex <- "(body heat|internal pressure|redness|breathing|visual interference|body hair|teeth biting|foaming|caressing|clenching)"
metonymy_typebased_salience_category <- metonymy_typebased_salience %>%
mutate(category = if_else(str_detect(metonymy, physiological_response_regex), "physiological response", "social-communicative behaviour"))
physiology_type_1 <- metonymy_typebased_salience_category %>%
filter(category == "physiological response") %>%
mutate(meto_stats = paste("[", metonymy, "]{.smallcaps} (type=", n_type, ")", sep = "")) %>%
pull(meto_stats)
physiology_type_1_total <- paste("*TOTAL~type~=", sum(filter(metonymy_typebased_salience_category, category == "physiological response")$n_type),"*", sep = "")
physiology_type_1 <- c(physiology_type_1, physiology_type_1_total)
social_type_1 <- metonymy_typebased_salience_category %>%
filter(category != "physiological response") %>%
mutate(meto_stats = paste("[", metonymy, "]{.smallcaps} (type=", n_type, ")", sep = "")) %>%
pull(meto_stats)
social_type_1_total <- paste("*TOTAL~type~=", sum(filter(metonymy_typebased_salience_category, category != "physiological response")$n_type),"*", sep = "")
social_type_1 <- c(social_type_1, rep("", (length(physiology_type_1) - 1) - length(social_type_1)), social_type_1_total)
metonymy_typebased_category_print <- tibble(`social-communicative behaviour:` = social_type_1, `physiological response:` = physiology_type_1)
```
```{r metonymy-table-type-based}
metonymy_typebased_salience %>%
mutate(metonymy = str_replace(metonymy, "frustated", "frustrated"),
metonymy = paste("[", metonymy, "]{.smallcaps}", sep = ""),
metonymy = str_replace_all(metonymy, fixed("visual interference"), "inability to see"),
metonymy = str_replace_all(metonymy, "(?<=\\sfor\\s)(anger)(?=\\])", "marah")) %>%
rename(Metonymy = metonymy,
`Types:` = n_type,
`% of all types:` = n_perc_type) %>%
knitr::kable(caption = "Conceptual metonymies for [anger]{.smallcaps} (Type-based, lexical approach)", row.names = FALSE)
```
The salience of each metonymy can only be measured in terms of the number of the metonymic expressions, given the metonymies only involve a single mapping. The mapping is reflected in the naming of the metonymy in the form of [metonymic source domain for metonymic target]{.smallcaps} (or [x for y]{.smallcaps} for short).
### [Strong/aggressive verbal behaviour for anger]{.smallcaps} {#verbal-behaviour-typebased}
The type-based analysis reveals that [`r str_replace(pull(slice_max(metonymy_typebased_salience, order_by = n_type), metonymy), " for anger", "")`]{.smallcaps} is the predominant metonymy for anger in Indonesian (*X*^2^~goodness~ ~of~ ~fit~=`r round(chisq.test(metonymy_typebased_salience$n_type)$statistic, digit = 2)`, *df*=`r chisq.test(metonymy_typebased_salience$n_type)$parameter`, *p*=`r format(chisq.test(metonymy_typebased_salience$n_type)$p.value, digit = 3)`), showing the largest inventory of metonymic expressions.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "verbal")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "verbal")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
These expressions are mostly verbs encoding the manner of speaking that metonymically points to the internal, emotional state of the speaker. When someone speaks in the manner conveyed by these expressions, the hearer could infer that the speaker is angry. Several expressions glossed as ‘snarl/snap at’ could also reflect the metaphorical mapping “aggressive animal behaviour → angry human behaviour”.
### [Violent frustrated behaviour for anger]{.smallcaps} {#violent-behaviour-typebased}
Linguistic expressions evoking certain harsh and violent actions/behaviours can be metonymically used to refer to anger. This is motivated experientially in that frustration often leads to anger, which then brings about some irrational, harsh, dangerous, or violent actions. The actions can be directed to oneself or others.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "frustated")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "frustated")), LU_GLOSS), "'", sep = ""), collapse = "; ") %>% str_replace_all(fixed("typically"), "especially")`
The metonymy is a sub-case of a more generic metonymy, namely [effect of emotion stands for emotion]{.smallcaps}.
### [Aggressive visual behaviour for anger]{.smallcaps}
This metonymy represents the externalisation of anger via the aggressive forms of visual and/or facial behaviours. This is shown by the presence of facial-related body-parts (e.g., mouth, eyes, face) in several metonymic expressions, or in the inherent meaning of the expressions.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "visual behaviour")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "visual behaviour")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Body heat for anger]{.smallcaps} {#body-heat-typebased}
In the classic CMT literature [e.g., @holland_cognitive_1987], the increased body heat is one of the experiential motivations for the [heat]{.smallcaps}-related metaphor of anger, such as [anger is fire]{.smallcaps}. Such bodily experience is felt during an intense anger and becomes a metonymic source domain for construing anger.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "body heat")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "body heat")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
The metonymy is also a sub-case of the generic [effect of emotion stands for emotion]{.smallcaps}. The metonymic expressions refer to a situation where someone experiencing heat in their body (e.g., *radang* 'feverish', *kegerahan* 'stifling heat') that is used to indicate anger.
```{r unused-body-heat-example}
# (@meradangkan) *manuver-manuver Rita yang berjuang dengan bendera Partai Berkarya cukup __meradangkan__ partai-partai lainnya, khususnya partai-partai besar seperti Golkar, PPP, PKB, PDIP, PAN atau Demokrat.* (https://www.metropolitan.id/2019/04/kunjungi-peternak-puyuh-di-akhir-kampanye/; last access: 5 February 2022)
```
### [Internal pressure for anger]{.smallcaps} {#internal-pressure-typebased}
The linguistic expressions under this metonymy refer to different kinds of internal bodily pressures, such as blood pressure, muscular pressure, and swollen chest.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "internal pressure")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "internal pressure")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Lip/teeth biting/pressing for anger]{.smallcaps} {#lip-biting-typebased}
This metonymy can be related to the issue of emotional control. Given an intense internal pressure, it forces the angry persons to externalise and react due to their anger. In that case, biting/pressing the lip/teeth may accompany the persons effort to stay calm, and it is metonymically used to indicate anger.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "biting")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "biting")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Redness in the facial area for anger]{.smallcaps} {#redness-typebased}
Another physiological effect of anger is physiological change in the facial area, such as flushing or being livid. This bodily experience is used to refer to anger.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "redness")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "redness")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
As we can see, a different body part around the face can be involved, such as the ear (*telinga*).
### [Inability to see for anger]{.smallcaps} {#visual-interference-typebased}
This metonymy appears to be the experiential grounding of the [darkness]{.smallcaps} metaphor ([§\@ref(darkness-typebased)](#darkness-typebased)). All metonymic expressions capture the visual-perception interference as if the eyes are (seeing) dark; hence, inability to see and, by way of semantic extension, think rationally.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "interference")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "interference")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Breathing difficulty for anger]{.smallcaps} {#breathing-typebased}
Intense, excited anger could lead to intense and difficult breathing. The expressions referring to difficulty in breathing, due to excessive heat and/or no fresh air, are used metonymically to refer to anger.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "breathing")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "breathing")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Standing body hair for anger]{.smallcaps} {#bodyhair-typebased}
This metonymy might be more relevant to fear than anger. However, in the Indonesian database, the expression related to bodily hair can refer to anger. It is the case in the body-part where no bodily hair is expected to grow, namely the liver '*hati*'.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "body hair")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "body hair")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Caressing the chest for anger]{.smallcaps} {#caressing-chest-typebased}
The situation when someone holds onto, or caresses, their chest, as if holding something from getting out, can refer to someone's effort to stay under control (i.e., being patient) (cf. [§\@ref(lip-biting-typebased)](#lip-biting-typebased)). The metonymic expression below indicates that *dada* 'chest' could contain anger.
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "caressing")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "caressing")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
### [Clenching fist for anger]{.smallcaps} {#fist-typebased}
This metonymy can be interpreted as highlighting control or an expression of anger (e.g., ready to attack the wrongdoer with the punch/fist).
- `r paste(paste("*", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "clenching")), LU), "* '", pull(filter(metonymy_typebased, str_detect(CM_BROADER, "clenching")), LU_GLOSS), "'", sep = ""), collapse = "; ")`
## Types of the metonymies (type-based dataset) {#metonymy-category-typebased}
The metonymies in [Table \@ref(tab:metonymy-table-type-based)](#metonymy-table-type-based) can be categorised into two broader categories ([Table \@ref(tab:metonymy-category-table-typebased)](#metonymy-category-table-typebased) below): (i) social-communicative behaviours of anger and (ii) the associated physiological responses.
```{r metonymy-category-table-typebased}
metonymy_typebased_category_binomtest <- binom.test(sum(filter(metonymy_typebased_salience_category, category != "physiological response")$n_type), sum(sum(filter(metonymy_typebased_salience_category, category != "physiological response")$n_type), sum(filter(metonymy_typebased_salience_category, category == "physiological response")$n_type)))
metonymy_typebased_category_print %>% mutate(`physiological response:` = str_replace_all(`physiological response:`, fixed("visual interference"), "inability to see"),
`social-communicative behaviour:` = str_replace_all(`social-communicative behaviour:`, fixed("frustated"), "frustrated")) %>% rename(`Social-Communicative Behaviour:`=`social-communicative behaviour:`, `Physiological Response:`=`physiological response:`) %>% knitr::kable(caption = "Two types of metonymies of [anger]{.smallcaps} (type-based dataset)")
```
[Table \@ref(tab:metonymy-category-table-typebased)](#metonymy-category-table-typebased) demonstrates that metonymies referring to the physiological responses are greater in number than those for the social-communicative behaviour. However, the total number of metonymic linguistic expressions/types are significantly higher for the social-communicative category (type=`r sum(filter(metonymy_typebased_salience_category, category != "physiological response")$n_type)`) than the physiological category (type=`r sum(filter(metonymy_typebased_salience_category, category == "physiological response")$n_type)`) (*p*~Binomial~ ~two~~-~~tailed~`r pval_print(metonymy_typebased_category_binomtest$p.value)`).
# Token-based salience {#tokenbased-analysis}
```{r token-based-analysis-computation, message=FALSE, include=FALSE, warning=FALSE, error=FALSE}
source("codes/MARAH-token-based-analysis-code.R")
ttr_metaphor_tokenbased <- happyr::ttr(df = marah, schema_var = "CM_BROADER", lexunit_var = "MP")
```
```{r difference-type-based-and-token-based}
metaphor_in_corpus_only <- setdiff(pull(metaphor_salience, metaphor), metaphor_typebased_salience$metaphor)
metaphor_in_corpus_only_top20 <- setdiff(pull(slice_max(metaphor_salience, n = 20, order_by = aggregate, with_ties = FALSE), metaphor), metaphor_typebased_salience$metaphor)
metaphor_in_lexical_only <- setdiff(metaphor_typebased_salience$metaphor, pull(metaphor_salience, metaphor))
metaphor_in_lexical_only_top20 <- setdiff(metaphor_typebased_salience$metaphor, pull(slice_max(metaphor_salience, n = 20, order_by = aggregate, with_ties = FALSE), metaphor))
metaphor_in_lexical_only_aggregate <- as.data.frame(metaphor_typebased_salience)[metaphor_typebased_salience$metaphor %in% metaphor_in_lexical_only, "aggregate"]
metaphor_in_lexical_only_ranking <- rownames(as.data.frame(metaphor_typebased_salience)[metaphor_typebased_salience$metaphor %in% metaphor_in_lexical_only, ])
metaphor_in_all_database <- intersect(pull(metaphor_salience, metaphor), metaphor_typebased_salience$metaphor)
metaphor_in_all_database_top20 <- intersect(pull(slice_max(metaphor_salience, n = 20, order_by = aggregate, with_ties = FALSE), metaphor), metaphor_typebased_salience$metaphor)
binom_test_metaphor_lexical_and_corpus <- binom.test(c(nrow(metaphor_salience), length(metaphor_typebased_salience$metaphor)))
# The number of metaphors in the corpus-based analysis (`r nrow(metaphor_salience)` types) is significantly greater than the number of metaphors in the type-based analysis (`r length(metaphor_typebased_salience$metaphor)` types) (*p*~Binomial~~,~ ~two~~-~~tailed~ = `r round(binom_test_metaphor_lexical_and_corpus$p.value, digits = 4)`).
```
The token-based, corpus study reveals `r nrow(marah)` tokens of metaphorical expressions (manifesting `r nrow(metaphor_salience)` metaphors) ([§\@ref(tokenbased-metaphor-salience-results)](#tokenbased-metaphor-salience-results)) and `r nrow(metonymy_tokenbased)` tokens of metonymic expressions (manifesting `r numbers2words(nrow(metonymy_tokenbased_salience))` metonymies) ([§\@ref(tokenbased-metonymy-salience-results)](#tokenbased-metonymy-salience-results)).
## Metaphor {#tokenbased-metaphor-salience-results}
[Table \@ref(tab:metaphor-table-token-based)](#metaphor-table-token-based) present all metaphor types identified from corpus-based analysis. The top-20 metaphors in [Table \@ref(tab:metaphor-table-token-based)](#metaphor-table-token-based) will be discussed to roughly match the similar number of metaphors found in the lexical approach ([Table \@ref(tab:metaphor-table-type-based)](#metaphor-table-type-based)). The metaphorical mappings for each metaphor will be presented in the decreasing order of their type frequencies (i.e., the number of linguistic expressions) to ease the identification of the "main meaning focus" of the metaphor via "the metaphorical linguistic expressions that _dominate_ a metaphor" [@kovecses_metaphor_2010, 140, italics is mine].
```{r metaphor-table-token-based}
# knitr::kable(slice_max(metaphor_salience_print, n = 20, order_by = Aggregate), caption = "Top-20 source domains of [anger]{.smallcaps} ranked-ordered by their degree of metaphorical salience (token-based)")
# knitr::kable(filter(metaphor_salience_print, Aggregate > 5), caption = "Source domains of [anger]{.smallcaps} based on the token-based, corpus approach (Aggregate values > 5%)")
knitr::kable(mutate(metaphor_salience_print, `Metaphorical source domains` = str_replace_all(`Metaphorical source domains`, "luminousity", "luminosity"),
`Metaphorical source domains` = str_replace_all(`Metaphorical source domains`, fixed("dimension"), "dimension/size"),
`Metaphorical source domains` = str_replace_all(`Metaphorical source domains`, fixed("subjugator"), "superior")),
caption = "Source domains of [anger]{.smallcaps} (Token-based, corpus approach)", row.names = FALSE)
```
### [Marah is a contained substance]{.smallcaps} {#contained-substance-tokenbased}
```{r mapping-containedfluid-token, message = FALSE, include = FALSE}
mapping_containedfluid_token <- filter(metaphor_tokenbased_mapping, str_detect(CM_BROADER, "is substance in a container$")) %>%
mutate(status = if_else(str_detect(MAPPING, "(_located\\-substance)"), "key", "no"),
status = if_else(str_detect(MAPPING, "experiencer_container"), "key", status),
status = if_else(str_detect(MAPPING, "(substance.fullness.level)"), "key", status),
MP_GLOSS = str_replace_all(MP_GLOSS, "\\sbe channelled(?!\\*)", " *be channelled*"))
mapping_containedfluid_token_stats <- get_metaphor_mapping_stat_typefreq(mapping_containedfluid_token)
mapping_containedfluid_token_discuss <- get_mappings(metaphor_tokenbased_mapping, 'is substance in a container$') %>% left_join(mapping_containedfluid_token %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_containedfluid_token_stats)
```
This metaphor is shared between the corpus and lexical approaches ([§\@ref(contained-substance-typebased)](#contained-substance-typebased)). It is the most salient one in the corpus dataset but sits at the rank `r get_metaphor_salience_rank(metaphor_typebased_salience, metaphor_regex = 'is substance in a container')` in the lexical dataset ([Table \@ref(tab:metaphor-table-type-based)](#metaphor-table-type-based)). Below are the mappings and the metaphorical expressions for the [contained substance]{.smallcaps} metaphor.
- expelling/releasing/channelling substance out (at others) → expressing anger (type=`r get_metaphor_mapping_n_lu(mapping_containedfluid_token_stats, 'releasing')`; token=`r get_metaphor_mapping_tokenfreq(mapping_containedfluid_token, 'releasing', lu_output = FALSE)`)
<!-- - `r mapping_containedfluid_token %>% filter(status == 'no') %>% filter(str_detect(MAPPING, "expressing anger is expelling.releasing.channel+ing substance out \\(at others\\)")) %>% count(LU, LU_GLOSS) %>% mutate(lu_gloss_n = paste("*", str_replace_all(LU, "<\\/?w>", ""), "* '", LU_GLOSS, "' (", n, ")", sep = "")) %>% arrange(desc(n)) %>% pull(lu_gloss_n) %>% paste(collapse = "; ")` -->
- `r get_lu_gloss_n_printed(mapping_containedfluid_token, 'releasing|expel+ing', lu_var = "MP", gloss_var = "MP_GLOSS")`
- the presence of object in a location → experiencing anger (type=`r get_metaphor_mapping_n_lu(mapping_containedfluid_token_stats, 'presence of object')`; token=`r get_metaphor_mapping_tokenfreq(mapping_containedfluid_token, 'presence of object', lu_output = FALSE)`)
<!-- - `r mapping_containedfluid_token %>% filter(status == 'no') %>% filter(MAPPING == "experiencing anger is the presence of object in a location") %>% count(LU, LU_GLOSS) %>% mutate(lu_gloss_n = paste("*", str_replace_all(LU, "<\\/?w>", ""), "* '", LU_GLOSS, "' (", n, ")", sep = "")) %>% arrange(desc(n)) %>% pull(lu_gloss_n) %>% paste(collapse = "; ")` -->
- `r get_lu_gloss_n_printed(mapping_containedfluid_token, 'experiencing anger is the presence of object in a location', lu_var = "MP", gloss_var = "MP_GLOSS")`
- increased fullness of the substance in the container → increased intensity (type=`r get_metaphor_mapping_n_lu(mapping_containedfluid_token_stats, 'increased fullness')`; token=`r get_metaphor_mapping_tokenfreq(mapping_containedfluid_token, 'increased fullness', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_containedfluid_token, 'increased fullness')`
- impeding flowing liquid → regulating anger (type=`r get_metaphor_mapping_n_lu(mapping_containedfluid_token_stats, 'impeding flowing')`; token=`r get_metaphor_mapping_tokenfreq(mapping_containedfluid_token, 'impeding flowing', lu_output = FALSE)`)
<!-- - `r mapping_containedfluid_token %>% filter(status == 'no') %>% filter(str_detect(MAPPING, "impeding flowing")) %>% count(LU, LU_GLOSS) %>% mutate(lu_gloss_n = paste("*", str_replace_all(LU, "<\\/?w>", ""), "* '", LU_GLOSS, "' (", n, ")", sep = "")) %>% arrange(desc(n)) %>% pull(lu_gloss_n) %>% paste(collapse = "; ")` -->
- `r get_lu_gloss_n_printed(mapping_containedfluid_token, 'impeding flowing', lu_var = "MP", gloss_var = "MP_GLOSS")`
- source of the liquid → cause of anger (type=`r get_metaphor_mapping_n_lu(mapping_containedfluid_token_stats, '^cause of anger')`; token=`r get_metaphor_mapping_tokenfreq(mapping_containedfluid_token, 'cause of anger', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_containedfluid_token, '^cause of anger', lu_var = "MP", gloss_var = "MP_GLOSS")`
- substance becomes hard → intense anger (type=`r get_metaphor_mapping_n_lu(mapping_containedfluid_token_stats, 'hard$')`; token=`r get_metaphor_mapping_tokenfreq(mapping_containedfluid_token, 'hard$', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_containedfluid_token, 'hard$')`
It is obvious that the corpus dataset has much greater number of linguistic types and mappings compared to the lexical dataset. Despite this difference, the metaphor in both datasets equally focuses on the externalisation/expression of anger since the metaphorical expressions of the mapping for this aspect is the most productive.
### [Marah is a fierce, captive animal]{.smallcaps} {#animal-tokenbased}
```{r mapping-animal-token, message = FALSE, include = FALSE}
mapping_animal_token <- filter(metaphor_tokenbased_mapping, str_detect(CM_BROADER, "animal$")) %>%
mutate(status = if_else(str_detect(MAPPING, "anger_restrained-entity"), "key", "no"),
status = if_else(str_detect(MAPPING, "experiencer/other-emotion_restraining-entity"), "key", status))
mapping_animal_token_stats <- get_metaphor_mapping_stat_typefreq(mapping_animal_token)
mapping_animal_token_discuss <- get_mappings(metaphor_tokenbased_mapping, 'animal$') %>% left_join(mapping_animal_token %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_animal_token_stats)
```
This metaphor is in the top-two salient metaphors across the two approaches but differs in its main meaning focus. In the lexical dataset ([§\@ref(animal-typebased)](#animal-typebased)), the predominant expressions highlight the aggressive behaviour of the animal (type=`r get_metaphor_mapping_n_lu(mapping_animal_stats, 'aggressive')`). In the corpus dataset, the expressions predominantly evoke mapping for restraining the animal (type=`r get_metaphor_mapping_n_lu(mapping_animal_token_stats, 'restraining')`; token=`r get_metaphor_mapping_tokenfreq(mapping_animal_token, 'restraining')`); this mapping is the least prominent in the lexical dataset (type=`r get_metaphor_mapping_n_lu(mapping_animal_stats, 'restraining')`).
- restrained, fierce animal → anger
- restraining entity → experiencer (or other states)
- restraining the animal →; regulating anger (type=`r get_metaphor_mapping_n_lu(mapping_animal_token_stats, 'restraining')`; token=`r get_metaphor_mapping_tokenfreq(mapping_animal_token, 'restraining', lu_output = FALSE)`)
- `r str_replace_all(get_lu_gloss_n_printed(mapping_animal_token, 'restraining'), fixed("controlable"), "controllable")`
- unleashing a captive → expressing and losing control over anger (type=`r get_metaphor_mapping_n_lu(mapping_animal_token_stats, 'unleashing')`; token=`r get_metaphor_mapping_tokenfreq(mapping_animal_token, 'unleashing', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_animal_token, 'unleashing')`
- aggressive animal behaviour → aggressive anger behaviour (type=`r get_metaphor_mapping_n_lu(mapping_animal_token_stats, 'aggressive anger')`; token=`r get_metaphor_mapping_tokenfreq(mapping_animal_token, 'aggressive anger', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_animal_token, 'aggressive anger')`
- being attacked by animal → experiencing effect of anger (type=`r get_metaphor_mapping_n_lu(mapping_animal_token_stats, 'attacked')`; token=`r get_metaphor_mapping_tokenfreq(mapping_animal_token, 'attacked', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_animal_token, 'attacked')`
The difference in the main meaning focus of the same metaphor between the two approaches indicate that combining the different methods enriches the nuance in the highlighted aspect of a metaphor.
### [Marah is fire]{.smallcaps} {#fire-tokenbased}
```{r mapping-fire-token, message = FALSE, include = FALSE}
mapping_fire_token <- filter(metaphor_tokenbased_mapping, str_detect(CM_BROADER, "fire$")) %>%
mutate(status = if_else(str_detect(MAPPING, "anger_fire|angry.person_burning.object|anger.level_fire.intensity"), "key", "no"),
status = if_else(str_detect(MAPPING, "anger_fire") & str_detect(LU, "^<w>api<\\/w>$"), "no", status),
MAPPING = if_else(str_detect(MAPPING, "anger_fire") & status == "no", "anger is fire", MAPPING))
mapping_fire_token_stats <- get_metaphor_mapping_stat_typefreq(mapping_fire_token)
mapping_fire_token_discuss <- get_mappings(metaphor_tokenbased_mapping, 'fire$') %>% left_join(mapping_fire_token %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_fire_token_stats)
```
Similar to the [fierce, captive animal]{.smallcaps} metaphor, the [anger is fire]{.smallcaps} metaphor is prominent in Indonesian in the lexical ([Table \@ref(tab:metaphor-table-type-based)](#metaphor-table-type-based)) and corpus-based datasets ([Table \@ref(tab:metaphor-table-token-based)](#metaphor-table-token-based)).
- fire → anger (type=`r get_metaphor_mapping_n_lu(mapping_fire_token_stats, 'anger is fire$')`; token=`r get_metaphor_mapping_tokenfreq(mapping_fire_token, 'anger is fire$', lu_output = FALSE)`) (`r get_lu_gloss_n_printed(mapping_fire_token, 'anger is fire$')`)
- burning/burnt object → angry person
- fire intensity → anger level
- the increased degree of fire → the increased degree of anger intensity (type=`r get_metaphor_mapping_n_lu(mapping_fire_token_stats, 'highest')`; token=`r get_metaphor_mapping_tokenfreq(mapping_fire_token, 'highest', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_fire_token, 'highest')`
- igniting fire → causing anger (type=`r get_metaphor_mapping_n_lu(mapping_fire_token_stats, 'causing')`; token=`r get_metaphor_mapping_tokenfreq(mapping_fire_token, 'causing', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_fire_token, 'causing')`
- potential open fire → latent intensity (type=`r get_metaphor_mapping_n_lu(mapping_fire_token_stats, 'latent')`; token=`r get_metaphor_mapping_tokenfreq(mapping_fire_token, 'latent', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_fire_token, 'latent')`
- fire going out → ceasing anger (type=`r get_metaphor_mapping_n_lu(mapping_fire_token_stats, 'ceasing')`; token=`r get_metaphor_mapping_tokenfreq(mapping_fire_token, 'ceasing', lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_fire_token, 'ceasing')`
The [fire]{.smallcaps} metaphor in the two approaches equally focuses on the intensity aspect, particularly the increased intensity of the fire given its greatest number of metaphorical expressions compared to the other mappings. However, if the token frequency of the mapping is considered, the [fire]{.smallcaps} metaphor predominantly captures the cause of anger (token=`r get_metaphor_mapping_tokenfreq(mapping_fire_token, 'causing', lu_output = FALSE)`).
### [Marah is weapon]{.smallcaps} {#weapon-tokenbased}
```{r mapping-weapon-token, message = FALSE, include = FALSE}
mapping_weapon_token <- filter(metaphor_tokenbased_mapping, str_detect(CM_BROADER, "weapon$")) %>%
mutate(status = if_else(str_detect(MAPPING, "anger_weapon"), "key", "no"))
mapping_weapon_token_stats <- get_metaphor_mapping_stat_typefreq(mapping_weapon_token)
mapping_weapon_token_discuss <- get_mappings(metaphor_tokenbased_mapping, 'weapon$') %>% left_join(mapping_weapon_token %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_weapon_token_stats)
```
The [weapon]{.smallcaps} metaphor is only identified in the corpus approach. The main meaning focus is directing/targeting anger to the wrongdoer or other people. In terms of the token frequency of the mapping, the causation mapping is the most predominant. Despite the highest token of the causation mapping, its linguistic manifestation is less varied compared to the targeting anger mapping, having diverse types despite its lower token frequency.
- the wrongdoer or other people → target of expression of anger (type=`r get_metaphor_mapping_n_lu(mapping_weapon_token_stats, "target of expression of anger")`; token=`r get_metaphor_mapping_tokenfreq(mapping_weapon_token, "target of expression of anger", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_weapon_token, "target of expression of anger")`
- pulling the trigger → causing anger (type=`r get_metaphor_mapping_n_lu(mapping_weapon_token_stats, "pulling the trigger")`; token=`r get_metaphor_mapping_tokenfreq(mapping_weapon_token, "pulling the trigger", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_weapon_token, "pulling the trigger")`
- punishing with the weapon → retribution/avenge to wrongdoing (type=`r get_metaphor_mapping_n_lu(mapping_weapon_token_stats, "punishing|avenging")`; token=`r get_metaphor_mapping_tokenfreq(mapping_weapon_token, "punishing|avenging", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_weapon_token, "punishing|avenging")`
- weapon → anger (type=`r get_metaphor_mapping_n_lu(mapping_weapon_token_stats, "^anger is weapon$")`; token=`r get_metaphor_mapping_tokenfreq(mapping_weapon_token, "^anger is weapon$", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_weapon_token, "^anger is weapon$")`
- redirecting weapon to constructive goal → channelling anger (type=`r get_metaphor_mapping_n_lu(mapping_weapon_token_stats, "constructive")`; token=`r get_metaphor_mapping_tokenfreq(mapping_weapon_token, "constructive", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_weapon_token, "constructive")`
The last mapping refers to a non-prototypical model of anger, namely "constructive use" of anger [@holland_cognitive_1987, 215].
### [Marah is an adversary/opponent]{.smallcaps} {#adversary-tokenbased}
```{r mapping-adversary-token, message = FALSE, include = FALSE}
mapping_adversary_token <- filter(metaphor_tokenbased_mapping, str_detect(CM_BROADER, "adversary$")) %>%
mutate(status = if_else(str_detect(MAPPING, "fighter[12]"), "key", "no"),
MP = str_replace_all(MP, "\\bnnode\\b", "node"))
mapping_adversary_token_stats <- get_metaphor_mapping_stat_typefreq(mapping_adversary_token)
mapping_adversary_token_discuss <- get_mappings(metaphor_tokenbased_mapping, 'adversary$') %>% left_join(mapping_adversary_token %>% filter(status=='no') %>% select(LU, LU_GLOSS, MAPPING)) %>% filter(!is.na(LU)) %>% left_join(mapping_adversary_token_stats)
opponent_frame_token <- count(filter(marah, str_detect(CM_BROADER, "adversary$")), SFRAME, sort = TRUE)
opponent_frame_type <- arrange(summarise(group_by(filter(marah, str_detect(CM_BROADER, "adversary$")), SFRAME), n_lu = n_distinct(LU)), desc(n_lu))
opponent_victim_token <- count(filter(marah, str_detect(CM_BROADER, "adversary$")), NOTES, sort = TRUE) %>%
mutate(NOTES = replace(NOTES, is.na(NOTES), "self as victim of anger"))
```
The [adversary/opponent]{.smallcaps} metaphor is absent in the lexical dataset. The metaphorical expressions evoke the [physical combat]{.smallcaps} frame (type=`r pull(slice_max(opponent_frame_type, order_by = n_lu), n_lu)`; token=`r pull(slice_max(opponent_frame_token, order_by = n), n)`). However, closer investigation on the context of the data reveal that the hostile encounter is not always between the anger-adversary and the self/experiencer. Construing anger as an adversary includes being the adversary for external, non-self entity (predominantly victim of a directed anger) (`r sum(pull(filter(opponent_victim_token, str_detect(NOTES, 'external|state')), n))` instances of the total `r sum(opponent_victim_token$n)` tokens of this metaphor). There are `r unlist(tally(filter(opponent_victim_token, str_detect(NOTES, 'external|state|^anger', negate = TRUE)), n))` instances where the victim is the self. This variation in the combatant of anger indicates that the adversarial nature of anger can not only endanger the experiencers but also social entities around them.
- giving in/losing → experiencing anger (type=`r get_metaphor_mapping_n_lu(mapping_adversary_token_stats, "losing")`; token=`r get_metaphor_mapping_tokenfreq(mapping_adversary_token, "losing", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_adversary_token, "losing")`
- combating opponent → attempt to control anger (e.g., fighting, confronting) (type=`r get_metaphor_mapping_n_lu(mapping_adversary_token_stats, "combating")`; token=`r get_metaphor_mapping_tokenfreq(mapping_adversary_token, "combating", lu_output = FALSE)`)
- `r get_lu_gloss_n_printed(mapping_adversary_token, "combating")`
- being protected from the opponent → evading anger (type=`r get_metaphor_mapping_n_lu(mapping_adversary_token_stats, "evading")`; token=`r get_metaphor_mapping_tokenfreq(mapping_adversary_token, "evading", lu_output = FALSE)`)