Jekyll2024-01-02T10:57:37+00:00https://charalambosthemistocleous.com//feed.xmlCharalambos K. Themistocleous(c) 2023 Charalambos K. ThemistocleousWhat is Primary Progressive Aphasia?2022-03-31T19:12:11+00:002022-03-31T19:12:11+00:00https://charalambosthemistocleous.com//ppa/2022/03/31/PPA<p>Primary Progressive Aphasia is neurodegenerative condition. Patients are characterized by impaired speech and language production.</p>Primary Progressive Aphasia is neurodegenerative condition. Patients are characterized by impaired speech and language production.Input methods in Emacs2017-12-13T12:00:00+00:002017-12-13T12:00:00+00:00https://charalambosthemistocleous.com//emacs,/writing/2017/12/13/emacs-input<p>To access multilingual support in Emacs, one easy way is by typing <strong>C-\</strong> and then
selecting an input method. The following functions are also useful:</p>
<p><strong>M-x</strong> : list-input-methods -it provides the list of input methods.</p>
<p><strong>M-x</strong> : describe-input-methods - it shows the key sequences and the
corresponding input characters for a specific input method.</p>
<p><strong>C-h I</strong> : the same.</p>
<h1 id="phonetics">Phonetics</h1>
<p>There are several input functions for inserting IPA symbols two of the
most common ones are the <strong>ipa-praat</strong> and <strong>ipa-x-sampa</strong>. If you
are transcribing English, French, German and Italian you may find the
<strong>IPA</strong> convenient. For Greek someone might want to download the IPA
keyboard from
my
<a href="https://github.com/themistocleous/Keyboard_Layouts">GitHub account</a>,
which works with all applications across a system.</p>
<h1 id="semanticslogic">Semantics/Logic</h1>
<p>The <strong>Tex</strong> input set provides several symbols that are useful, e.g.,
Greek letters, unary operators, relation operators, binary operators,
negated binary operators, set and/or logic notation, delimiters,
arrows, etc.</p>
<h1 id="languages">Languages</h1>
<p>There are input methods that provide graphemes for most languages.</p>
<h1 id="input-methods">Input Methods</h1>
<p>The list of the available input methods available are listed
below.</p>
<h2 id="arabic">Arabic</h2>
<ul>
<li>arabic (‘ع’ in mode line)
Arabic input method.</li>
</ul>
<h2 id="assamese">Assamese</h2>
<ul>
<li>assamese-inscript (‘AsmIS’ in mode line)
Assamese keyboard Inscript</li>
<li>assamese-itrans (‘AsmIT’ in mode line)
Assamese ITRANS</li>
</ul>
<h2 id="belarusian">Belarusian</h2>
<ul>
<li>belarusian (‘BE’ in mode line)
ЙЦУКЕН keyboard layout registered as STB955-94 Belarusian standard.</li>
</ul>
<h2 id="bengali">Bengali</h2>
<ul>
<li>bengali-probhat (‘BngPB’ in mode line)
Probhat keyboard for Bengali/Bangla</li>
<li>bengali-inscript (‘BngIS’ in mode line)
Bengali keyboard Inscript</li>
<li>bengali-itrans (‘BngIT’ in mode line)
Bengali ITRANS</li>
</ul>
<h2 id="bulgarian">Bulgarian</h2>
<ul>
<li>bulgarian-bds (‘БДС’ in mode line)
Bulgarian standard keyboard layout (BDS)</li>
<li>bulgarian-phonetic (‘ЖБФ’ in mode line)
Bulgarian Phonetic keyboard layout, producing Unicode.</li>
<li>bulgarian-alt-phonetic (‘БНФ’ in mode line)
Bulgarian alternative Phonetic keyboard layout, producing Unicode.</li>
</ul>
<h2 id="chinese">Chinese</h2>
<ul>
<li>chinese-sisheng (‘ǚ’ in mode line)
Sìshēng input method for pīnyīn transliteration of Chinese.</li>
</ul>
<h2 id="chinese-big5">Chinese-BIG5</h2>
<ul>
<li>chinese-zozy (‘零注’ in mode line)
中文輸入【零壹注音】</li>
<li>chinese-b5-quick (‘簡B’ in mode line)
中文輸入【簡易】BIG5</li>
<li>chinese-punct-b5 (‘標B’ in mode line)
中文輸入【標點符號】</li>
<li>chinese-array30 (‘30’ in mode line)
中文【行列30】</li>
<li>chinese-py-b5 (‘拼B’ in mode line)
漢字輸入::拼音::</li>
<li>chinese-ecdict (‘英漢’ in mode line)
中文輸入【英漢辭典】</li>
<li>chinese-b5-tsangchi (‘倉B’ in mode line)
中文輸入【倉頡】BIG5</li>
<li>chinese-4corner (‘四角’ in mode line)
四角號碼::</li>
<li>chinese-py-punct-b5 (‘拼符’ in mode line)
中文輸入【拼音】 and ‘v’ for 標點符號輸入</li>
<li>chinese-qj-b5 (‘全B’ in mode line)
漢字輸入::全角::</li>
<li>chinese-etzy (‘倚注’ in mode line)
中文輸入【倚天注音】</li>
<li>chinese-ctlaub (‘劉粵’ in mode line)
漢字輸入:劉錫祥式粵音:</li>
</ul>
<h2 id="chinese-cns">Chinese-CNS</h2>
<ul>
<li>chinese-cns-quick (‘簡C’ in mode line)
中文輸入【簡易】CNS</li>
<li>chinese-cns-tsangchi (‘倉C’ in mode line)
中文輸入【倉頡】CNS</li>
</ul>
<h2 id="chinese-gb">Chinese-GB</h2>
<ul>
<li>chinese-tonepy (‘调拼’ in mode line)
汉字输入∷带调拼音∷</li>
<li>chinese-ctlau (‘刘粤’ in mode line)
汉字输入∷刘锡祥式粤音∷</li>
<li>chinese-py (‘拼G’ in mode line)
汉字输入∷拼音∷</li>
<li>chinese-qj (‘全G’ in mode line)
汉字输入∷全角∷</li>
<li>chinese-tonepy-punct (‘拼符’ in mode line)
汉字输入 带调拼音方案 and ‘v’ for 标点符号输入</li>
<li>chinese-py-punct (‘拼符’ in mode line)
汉字输入 拼音方案 and ‘v’ for 标点符号输入</li>
<li>chinese-ziranma (‘自然’ in mode line)
汉字输入∷【自然】∷</li>
<li>chinese-punct (‘标G’ in mode line)
汉字输入∷标点符号∷\243\240</li>
<li>chinese-ccdospy (‘缩拼’ in mode line)
汉字输入∷缩写拼音∷</li>
<li>chinese-sw (‘首尾’ in mode line)
汉字输入∷首尾∷</li>
</ul>
<h2 id="croatian">Croatian</h2>
<ul>
<li>croatian-cc (‘HR’ in mode line)
Another alternative Croatian input method.</li>
<li>croatian-xy (‘HR’ in mode line)
An alternative Croatian input method.</li>
<li>croatian-postfix (‘HR’ in mode line)
Croatian input method, postfix.</li>
<li>croatian-prefix (‘HR’ in mode line)
Croatian input method, prefix.</li>
<li>croatian-qwerty (‘HR’ in mode line)
Croatian keyboard without the y/z swap.</li>
<li>croatian (‘HR’ in mode line)
“Standard” Croatian keyboard.</li>
</ul>
<h2 id="cyrillic">Cyrillic</h2>
<ul>
<li>cyrillic-translit (‘Жt’ in mode line)
Intuitively transliterated keyboard layout.</li>
<li>cyrillic-yawerty (‘ЖЯ’ in mode line)
ЯВЕРТЫ Roman transcription</li>
<li>cyrillic-serbian (‘ЖS’ in mode line)
ЉЊЕРТЗ-ЂЋ keyboard layout based on JUS.I.K1.005</li>
<li>cyrillic-macedonian (‘ЖM’ in mode line)
ЉЊЕРТЗ-ЃЌ keyboard layout based on JUS.I.K1.004</li>
<li>cyrillic-jis-russian (‘ЖЙ’ in mode line)
ЙЦУКЕН keyboard layout same as JCUKEN (JIS X0208.1983 encoding)
<h2 id="czech">Czech</h2>
</li>
<li>czech-prog-3 (‘CZ’ in mode line)
Czech (non-standard) keyboard for programmers compatible with the default</li>
<li>czech-prog-2 (‘CZ’ in mode line)
Czech (non-standard) keyboard for programmers #2.</li>
<li>czech-prog-1 (‘CZ’ in mode line)
Czech (non-standard) keyboard for programmers #1.</li>
<li>czech-qwerty (‘CZ’ in mode line)
“Standard” Czech keyboard in the Windows NT 105 keys version, QWERTY layout.</li>
<li>czech (‘CZ’ in mode line)
“Standard” Czech keyboard in the Windows NT 105 keys version.</li>
</ul>
<h2 id="devanagari">Devanagari</h2>
<ul>
<li>devanagari-inscript (‘DevIS’ in mode line)
Devanagari keyboard Inscript</li>
<li>devanagari-aiba (‘DevAB’ in mode line)
Devanagari Aiba</li>
<li>devanagari-kyoto-harvard (‘DevKH’ in mode line)
Devanagari Kyoto-Harvard</li>
<li>devanagari-itrans (‘DevIT’ in mode line)
Devanagari ITRANS</li>
</ul>
<h2 id="dutch">Dutch</h2>
<ul>
<li>dutch (‘NL’ in mode line)
Dutch character mixfix input method.</li>
</ul>
<h2 id="english">English</h2>
<ul>
<li>english-dvorak (‘DV@’ in mode line)
English (ASCII) input method simulating Dvorak keyboard</li>
<li>programmer-dvorak (‘DVP@’ in mode line)
An English (ASCII) dvorak layout optimized for programming, with for example</li>
</ul>
<h2 id="ethiopic">Ethiopic</h2>
<ul>
<li>ethiopic (‘ፊደል ’ in mode line)
Quail package for Ethiopic (Tigrigna and Amharic)</li>
</ul>
<h2 id="french">French</h2>
<ul>
<li>french-azerty (‘AZ@’ in mode line)
French (Français) input method simulating Azerty keyboard</li>
<li>french-keyboard (‘FR@’ in mode line)
French (Français) input method simulating some French keyboard</li>
<li>french-postfix (‘FR<’ in mode line)
French (Français) input method with postfix modifiers</li>
<li>french-alt-postfix (‘FR<’ in mode line)
French (Français) input method with postfix modifiers</li>
<li>french-prefix (‘FR>’ in mode line)
French (Français) input method with prefix modifiers</li>
</ul>
<h2 id="georgian">Georgian</h2>
<ul>
<li>georgian (‘გ’ in mode line)
A common Georgian transliteration (using Unicode)</li>
</ul>
<h2 id="german">German</h2>
<ul>
<li>german (‘DE@’ in mode line)
German (Deutsch) input method simulating SUN German keyboard</li>
<li>german-postfix (‘DE<’ in mode line)
German (Deutsch) input method</li>
<li>german-prefix (‘DE>’ in mode line)
German (Deutsch) input method with prefix modifiers</li>
</ul>
<h2 id="greek">Greek</h2>
<ul>
<li>greek (‘Ω’ in mode line)
Ελληνικά: Greek keyboard layout (ISO 8859-7)</li>
<li>greek-ibycus4 (‘IB’ in mode line)
The Ibycus4 input method for Classical Greek using mule-unicode-0100-24ff.</li>
<li>greek-babel (‘BG’ in mode line)
The TeX Babel input method for Classical Greek using mule-unicode-0100-24ff.</li>
<li>greek-mizuochi (‘CG’ in mode line)
The Mizuochi input method for Classical Greek using mule-unicode-0100-24ff.</li>
<li>greek-jis (‘Ω’ in mode line)
Ελληνικα: Greek keyboard layout (JIS X0208.1983)</li>
</ul>
<h2 id="greekpost">GreekPost</h2>
<ul>
<li>greek-postfix (‘Ψ’ in mode line)
Ελληνικά: Greek keyboard layout with postfix accents (ISO 8859-7)</li>
</ul>
<h2 id="gujarati">Gujarati</h2>
<ul>
<li>gujarati-inscript (‘GjrIS’ in mode line)
Gujarati keyboard Inscript</li>
<li>gujarati-itrans (‘GjrIT’ in mode line)
Gujarati ITRANS</li>
</ul>
<h2 id="hebrew">Hebrew</h2>
<ul>
<li>yiddish-keyman (‘ײק’ in mode line)
Yiddish Keyman input method.</li>
<li>yiddish-royal (‘ײר’ in mode line)
Yiddish Royal input method.</li>
<li>hebrew-biblical-sil (‘סִל’ in mode line)
Biblical Hebrew SIL input method.</li>
<li>hebrew-biblical-tiro (‘תִרֹ’ in mode line)
Biblical Hebrew Tiro input method.</li>
<li>hebrew-full (‘עִ֫’ in mode line)
Hebrew Full method.</li>
<li>hebrew-lyx (‘לִ’ in mode line)
Hebrew LyX input method.</li>
<li>hebrew-new (‘ע’ in mode line)
Hebrew SI-1452 new draft input method.</li>
<li>hebrew (‘ע’ in mode line)
Hebrew SI-1452 input method.</li>
</ul>
<h2 id="ipa">IPA</h2>
<ul>
<li>ipa-x-sampa (‘IPA-X’ in mode line)
The International Phonetic Alphabet, using J.C. Wells’ X-SAMPA.</li>
<li>ipa-kirshenbaum (‘IPA-K’ in mode line)
The International Phonetic Alphabet, using Kirshenbaum ASCII translit.</li>
<li>ipa (‘IPA’ in mode line)
International Phonetic Alphabet for English, French, German and Italian</li>
<li>ipa-praat (‘IPAP’ in mode line)
International Phonetic Alphabet input method. This follows the
input method of the phonetic analysis program Praat
(https://www.fon.hum.uva.nl/praat/).</li>
</ul>
<h3 id="vowels">Vowels</h3>
<h4 id="unrounded">Unrounded</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left"> </th>
<th scope="col" class="org-left">front</th>
<th scope="col" class="org-left">centr.</th>
<th scope="col" class="org-left">back</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">close</td>
<td class="org-left">i i</td>
<td class="org-left">ɨ \i-</td>
<td class="org-left">ɯ \mt</td>
</tr>
<tr>
<td class="org-left">close centr.</td>
<td class="org-left">ɪ \ic</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">close-mid</td>
<td class="org-left">e e</td>
<td class="org-left">ɘ \e-</td>
<td class="org-left">ɤ \rh</td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ə \sw</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">open-mid</td>
<td class="org-left">ɛ \ef</td>
<td class="org-left">ɜ \er</td>
<td class="org-left">ʌ \vt</td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">æ \ae</td>
<td class="org-left">ɐ \at</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">open</td>
<td class="org-left">a a</td>
<td class="org-left"> </td>
<td class="org-left">ɑ \as</td>
</tr>
</tbody>
</table>
<h4 id="rounded">Rounded</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left"> </th>
<th scope="col" class="org-left">front</th>
<th scope="col" class="org-left">centr.</th>
<th scope="col" class="org-left">back</th>
<th scope="col" class="org-left"> </th>
<th scope="col" class="org-left"> </th>
<th scope="col" class="org-left"> </th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">close centr.</td>
<td class="org-left">ʏ \yc</td>
<td class="org-left"> </td>
<td class="org-left">ʊ \hs close-mid</td>
<td class="org-left">ø \o/</td>
<td class="org-left">ɵ \o-</td>
<td class="org-left">o o</td>
</tr>
<tr>
<td class="org-left">open-mid</td>
<td class="org-left">œ \oe</td>
<td class="org-left">ɞ \kb</td>
<td class="org-left">ɔ \ct open</td>
<td class="org-left">ɶ \Oe</td>
<td class="org-left"> </td>
<td class="org-left">ɒ \ab</td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
</tbody>
</table>
<p>For most of the codes, the first letter tells you the most
similar letter of the English alphabet. The second letter can be
t (turned), c (capital), s (script), r (reversed), - (barred or
retracted), or / (slashed). One symbol (ɛ) is a phonetic version
of a Greek letter. The codes for ə, ɤ, ʊ and ɞ are abbreviations
for schwa, ram’s horn, horseshoe, and kidney bean.</p>
<h3 id="consonants">Consonants</h3>
<h4 id="pulmonic">Pulmonic</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left"> </th>
<th scope="col" class="org-left">plos.</th>
<th scope="col" class="org-left">nasal</th>
<th scope="col" class="org-left">fric.</th>
<th scope="col" class="org-left">approx.</th>
<th scope="col" class="org-left">trill</th>
<th scope="col" class="org-left">tap/flap</th>
<th scope="col" class="org-left">l. appr.</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">bilabial</td>
<td class="org-left">p p</td>
<td class="org-left">m m</td>
<td class="org-left">ɸ \ff</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">b b</td>
<td class="org-left"> </td>
<td class="org-left">β \bf</td>
<td class="org-left">ʋ \vs</td>
<td class="org-left">ʙ \bc</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">labiodent.</td>
<td class="org-left"> </td>
<td class="org-left">ɱ \mj</td>
<td class="org-left">f f</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">v v</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">dental</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">θ \tf</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ð \dh</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">alveolar</td>
<td class="org-left">t t</td>
<td class="org-left">n n</td>
<td class="org-left">s s</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɾ \fh</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">d d</td>
<td class="org-left"> </td>
<td class="org-left">z z</td>
<td class="org-left">ɹ \rt</td>
<td class="org-left">r r</td>
<td class="org-left"> </td>
<td class="org-left">l l</td>
</tr>
<tr>
<td class="org-left">alv. lat.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɬ \l-</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɺ \rl</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɮ \lz</td>
<td class="org-left">l l</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">l l</td>
</tr>
<tr>
<td class="org-left">postalv.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʃ \sh</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʒ \zh</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">retroflex</td>
<td class="org-left">ʈ \t.</td>
<td class="org-left">ɳ \n.</td>
<td class="org-left">ʂ \s.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɽ \f.</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">ɖ \d.</td>
<td class="org-left"> </td>
<td class="org-left">ʐ \z.</td>
<td class="org-left">ɻ \r.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɭ \l.</td>
</tr>
<tr>
<td class="org-left">alv.-pala.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɕ \cc</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʑ \zc</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">palatal</td>
<td class="org-left">c c</td>
<td class="org-left">ɲ \nj</td>
<td class="org-left">ç \c,</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">ɟ \j.</td>
<td class="org-left"> </td>
<td class="org-left">ʝ \jc</td>
<td class="org-left">j j</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʎ \yt</td>
</tr>
<tr>
<td class="org-left">lab.-pal.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɥ \ht</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">lab.-vela.</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʍ \wt</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">w w</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">velar</td>
<td class="org-left">k k</td>
<td class="org-left">ŋ \ng</td>
<td class="org-left">x x</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʟ \lc</td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">ɡ \gs</td>
<td class="org-left"> </td>
<td class="org-left">ɣ \gf</td>
<td class="org-left">ɰ \ml</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">uvular</td>
<td class="org-left">q q</td>
<td class="org-left">ɴ \nc</td>
<td class="org-left">χ \cf</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left">ɢ \gc</td>
<td class="org-left"> </td>
<td class="org-left">ʁ \ri</td>
<td class="org-left"> </td>
<td class="org-left">ʀ \rc</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">pharyngeal</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ħ \h-</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʕ \9e</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">epiglottal</td>
<td class="org-left">ʡ \?-</td>
<td class="org-left"> </td>
<td class="org-left">ʜ \hc</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ʢ \9-</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">glottal</td>
<td class="org-left">ʔ</td>
<td class="org-left"> </td>
<td class="org-left">h h</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left">ɦ \h^</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
</tbody>
</table>
<h4 id="nonpulmonic">Nonpulmonic</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left"> </th>
<th scope="col" class="org-left">implosive</th>
<th scope="col" class="org-left">click</th>
<th scope="col" class="org-left"> </th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">bilabial</td>
<td class="org-left">ɓ \b^</td>
<td class="org-left">ʘ \O.</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">dental</td>
<td class="org-left"> </td>
<td class="org-left">ǀ \</td>
<td class="org-left">1</td>
</tr>
<tr>
<td class="org-left">alveolar</td>
<td class="org-left">ɗ \d^</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">alv.-lat.</td>
<td class="org-left"> </td>
<td class="org-left">ǁ \</td>
<td class="org-left">2</td>
</tr>
<tr>
<td class="org-left">postalv.</td>
<td class="org-left"> </td>
<td class="org-left">ǂ \</td>
<td class="org-left">-</td>
</tr>
<tr>
<td class="org-left">retrofl.</td>
<td class="org-left"> </td>
<td class="org-left">! !</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">palatal</td>
<td class="org-left">ʄ \j^</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">velar</td>
<td class="org-left">ɠ \g^</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">uvular</td>
<td class="org-left">ʛ \G^</td>
<td class="org-left"> </td>
<td class="org-left"> </td>
</tr>
</tbody>
</table>
<p>For most of the codes, the first letter tells you the most
similar letter of the English alphabet. The second letter can
be t (turned), c (capital or curled), s (script), - (barred),
l (with leg), i (inverted), or j (left tail). Some phonetic
symbols are similar to Greek letters but have special
phonetic (f) versions with serifs (ɸ, β, ɣ) or are otherwise
slightly different (θ, χ). The codes for ŋ (engma), ð (eth),
ʃ (esh), and ʒ (yogh) are traditional alternative spellings.
The retroflexes have a period in the second place, because an
alternative traditional spelling is to write a dot under
them. The code for ɾ is an abbreviation for fishhook.</p>
<h3 id="diacritics">Diacritics</h3>
<h4 id="in-line">In line</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left">input</th>
<th scope="col" class="org-left">example</th>
<th scope="col" class="org-left">description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">\:f</td>
<td class="org-left">ː</td>
<td class="org-left">phonetic length sign</td>
</tr>
<tr>
<td class="org-left">\’1</td>
<td class="org-left">ˈ</td>
<td class="org-left">primary stress</td>
</tr>
<tr>
<td class="org-left">\’2</td>
<td class="org-left">ˌ</td>
<td class="org-left">secondary stress</td>
</tr>
<tr>
<td class="org-left">\cn</td>
<td class="org-left">t̚</td>
<td class="org-left">unreleased plosive</td>
</tr>
<tr>
<td class="org-left">\rh</td>
<td class="org-left">ɜ˞</td>
<td class="org-left">rhotacized vowel</td>
</tr>
</tbody>
</table>
<h4 id="understrikes">Understrikes</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left">input</th>
<th scope="col" class="org-left">example</th>
<th scope="col" class="org-left">description</th>
<th scope="col" class="org-left"> </th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">\</td>
<td class="org-left">v</td>
<td class="org-left">n̩</td>
<td class="org-left">syllabic consonant</td>
</tr>
<tr>
<td class="org-left">\0v</td>
<td class="org-left">b̥</td>
<td class="org-left">voiceless</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\Tv</td>
<td class="org-left">o̞</td>
<td class="org-left">lowered</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\T^</td>
<td class="org-left">o̝</td>
<td class="org-left">raised</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\T(</td>
<td class="org-left">o̘</td>
<td class="org-left">advanced tongue root</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\T)</td>
<td class="org-left">o̙</td>
<td class="org-left">retracted tongue root</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\­v</td>
<td class="org-left">e̱</td>
<td class="org-left">backed</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\+v</td>
<td class="org-left">o̟</td>
<td class="org-left">fronted</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\:v</td>
<td class="org-left">o̤</td>
<td class="org-left">breathy voice</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\~v</td>
<td class="org-left">o̰</td>
<td class="org-left">creaky voice</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\Nv</td>
<td class="org-left">d̪</td>
<td class="org-left">dental (as opposed to alveolar)</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\Uv</td>
<td class="org-left">d̺</td>
<td class="org-left">apical</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\Dv</td>
<td class="org-left">d̻</td>
<td class="org-left">laminal</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\nv</td>
<td class="org-left">u̯</td>
<td class="org-left">nonsyllabic</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\e3v</td>
<td class="org-left">e̹</td>
<td class="org-left">slightly rounded</td>
<td class="org-left"> </td>
</tr>
<tr>
<td class="org-left">\cv</td>
<td class="org-left">u̜</td>
<td class="org-left">slightly unrounded</td>
<td class="org-left"> </td>
</tr>
</tbody>
</table>
<h4 id="overstrikes">Overstrikes</h4>
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
<col class="org-left" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left">input</th>
<th scope="col" class="org-left">example</th>
<th scope="col" class="org-left">description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">\0^</td>
<td class="org-left">ɣ̊</td>
<td class="org-left">voiceless</td>
</tr>
<tr>
<td class="org-left">\’^</td>
<td class="org-left"> </td>
<td class="org-left">high tone</td>
</tr>
<tr>
<td class="org-left">\‘^</td>
<td class="org-left"> </td>
<td class="org-left">low tone</td>
</tr>
<tr>
<td class="org-left">\­^</td>
<td class="org-left"> </td>
<td class="org-left">mid tone</td>
</tr>
<tr>
<td class="org-left">\~^</td>
<td class="org-left"> </td>
<td class="org-left">nasalized</td>
</tr>
<tr>
<td class="org-left">\v^</td>
<td class="org-left"> </td>
<td class="org-left">rising tone</td>
</tr>
<tr>
<td class="org-left">\^^</td>
<td class="org-left"> </td>
<td class="org-left">falling tone</td>
</tr>
<tr>
<td class="org-left">\:^</td>
<td class="org-left"> </td>
<td class="org-left">centralized</td>
</tr>
<tr>
<td class="org-left">\N^</td>
<td class="org-left"> </td>
<td class="org-left">short</td>
</tr>
<tr>
<td class="org-left">\li</td>
<td class="org-left">k͡p</td>
<td class="org-left">simultaneous articulation or single segment</td>
</tr>
</tbody>
</table>
<h2 id="japanese">Japanese</h2>
<ul>
<li>japanese-katakana (‘ア’ in mode line)
Japanese katakana input method by Roman transliteration.</li>
<li>japanese-hiragana (‘あ’ in mode line)
Japanese hiragana input method by Roman transliteration.</li>
<li>japanese-hankaku-kana (‘ア’ in mode line)
Japanese hankaku katakana input method by Roman transliteration.</li>
<li>japanese-zenkaku (‘A’ in mode line)
Japanese zenkaku alpha numeric character input method.</li>
<li>japanese-ascii (‘Aa’ in mode line)
Temporary ASCII input mode used within the input method ‘japanese’.</li>
<li>japanese (‘Aあ’ in mode line)
Japanese input method by Roman transliteration and Kana-Kanji conversion.</li>
</ul>
<h2 id="kannada">Kannada</h2>
<ul>
<li>kannada-inscript (‘KndIS’ in mode line)
Kannada keyboard Inscript</li>
<li>kannada-itrans (‘KndIT’ in mode line)
Kannada ITRANS</li>
</ul>
<h2 id="korean">Korean</h2>
<ul>
<li>korean-hanja-jis (‘漢2’ in mode line)
2벌식JIS漢字: 該當하는 漢字의 韻을 한글2벌式으로 呼出하여 選擇</li>
<li>korean-hanja3 (‘漢3’ in mode line)
3벌식KSC漢字: 該當하는 漢字의 韻을 한글3벌式으로 呼出하여 選擇</li>
<li>korean-symbol (‘심벌’ in mode line)
한글심벌입력표:</li>
<li>korean-hanja (‘漢2’ in mode line)
2벌식KSC漢字: 該當하는 漢字의 韻을 한글2벌式으로 呼出하여 選擇</li>
</ul>
<h2 id="lao">Lao</h2>
<ul>
<li>lao-lrt (‘ລR’ in mode line)
Lao input method using LRT (Lao Roman Transcription).</li>
<li>lao (‘ລ’ in mode line)
Lao input method simulating Lao keyboard layout based on Thai TIS620</li>
</ul>
<h2 id="latin">Latin</h2>
<ul>
<li>latin-postfix (‘L<’ in mode line)
Latin character input method with postfix modifiers.</li>
<li>latin-alt-postfix (‘L<’ in mode line)
Latin character input method with postfix modifiers.</li>
<li>latin-prefix (‘L>’ in mode line)
Latin characters input method with prefix modifiers.</li>
</ul>
<h2 id="latin-1">Latin-1</h2>
<ul>
<li>italian-keyboard (‘IT@’ in mode line)
Italian (Italiano) input method simulating SUN Italian keyboard</li>
<li>finnish-keyboard (‘FI@’ in mode line)
Finnish input method simulating SUN Finnish/Swedish keyboard</li>
<li>swedish-keyboard (‘SV@’ in mode line)
Swedish (Svenska) input method simulating SUN Swedish/Finnish keyboard</li>
<li>norwegian-keyboard (‘NO@’ in mode line)
Norwegian (Norsk) input method simulating SUN Norwegian keyboard</li>
<li>danish-keyboard (‘DA@’ in mode line)
Danish input method simulating SUN Danish keyboard</li>
<li>icelandic-keyboard (‘IS@’ in mode line)
Icelandic (Íslenska) input method simulating some Icelandic keyboard</li>
<li>british (‘£@’ in mode line)
British English input method with Latin-1 character £ (# -> £)</li>
<li>swedish-postfix (‘SV<’ in mode line)
Swedish (Svenska) input method (rule: AA -> Å AE -> Ä OE -> Ö E’ -> É)</li>
<li>scandinavian-postfix (‘SC<’ in mode line)
Scandinavian input method with postfix modifiers</li>
<li>norwegian-postfix (‘NO<’ in mode line)
Norwegian (Norsk) input method (rule: AE->Æ OE->Ø AA->Å E’->É)</li>
<li>italian-postfix (‘IT<’ in mode line)
Italian (Italiano) input method with postfix modifiers</li>
<li>icelandic-postfix (‘IS<’ in mode line)
Icelandic (Íslenska) input method with postfix modifiers</li>
<li>finnish-postfix (‘FI<’ in mode line)
Finnish (Suomi) input method</li>
<li>danish-postfix (‘DA<’ in mode line)
Danish input method (rule: AE -> Æ, OE -> Ø, AA -> Å, E’ -> É)</li>
<li>latin-1-postfix (‘1<’ in mode line)
Latin-1 character input method with postfix modifiers</li>
<li>italian-alt-postfix (‘IT<’ in mode line)
Italian (Italiano) input method with postfix modifiers</li>
<li>latin-1-alt-postfix (‘1<’ in mode line)
Latin-1 character input method with postfix modifiers</li>
<li>portuguese-prefix (‘PT>’ in mode line)
Portuguese input method with prefix modifiers</li>
<li>irish-prefix (‘GA>’ in mode line)
Irish input method with prefix modifiers</li>
<li>catalan-prefix (‘CA>’ in mode line)
Catalan and Spanish input method with prefix modifiers</li>
<li>latin-1-prefix (‘1>’ in mode line)
Latin-1 characters input method with prefix modifiers</li>
</ul>
<h2 id="latin-2">Latin-2</h2>
<ul>
<li>latin-2-postfix (‘2<’ in mode line)
Latin-2 character input method with postfix modifiers</li>
<li>latin-2-alt-postfix (‘2<’ in mode line)
Latin-2 character input method with postfix modifiers</li>
<li>latin-2-prefix (‘2>’ in mode line)
Latin-2 characters input method with prefix modifiers</li>
</ul>
<h2 id="latin-3">Latin-3</h2>
<ul>
<li>esperanto-postfix (‘EO<’ in mode line)
Esperanto input method with postfix modifiers</li>
<li>latin-3-postfix (‘3<’ in mode line)
Latin-3 character input method with postfix modifiers</li>
<li>latin-3-alt-postfix (‘3<’ in mode line)
Latin-3 character input method with postfix modifiers</li>
<li>latin-3-prefix (‘3>’ in mode line)
Latin-3 characters input method with prefix modifiers</li>
<li>esperanto-prefix (‘EO>’ in mode line)
Esperanto input method with prefix modifiers</li>
</ul>
<h2 id="latin-4">Latin-4</h2>
<ul>
<li>latin-4-postfix (‘4<’ in mode line)
Latin-4 characters input method with postfix modifiers</li>
<li>latin-4-alt-postfix (‘4<’ in mode line)
Latin-4 characters input method with postfix modifiers</li>
</ul>
<h2 id="latin-5">Latin-5</h2>
<ul>
<li>latin-5-postfix (‘5<’ in mode line)
Latin-5 characters input method with postfix modifiers</li>
<li>latin-5-alt-postfix (‘5<’ in mode line)
Latin-5 characters input method with postfix modifiers</li>
</ul>
<h2 id="latin-8">Latin-8</h2>
<ul>
<li>latin-8-prefix (‘8>’ in mode line)
Latin-8 characters input method with prefix modifiers</li>
</ul>
<h2 id="latin-9">Latin-9</h2>
<ul>
<li>latin-9-prefix (‘0>’ in mode line)
Latin-9 characters input method with prefix modifiers</li>
</ul>
<h2 id="latvian">Latvian</h2>
<ul>
<li>latvian-keyboard (‘Lv’ in mode line)
Latvian standard keyboard input method.</li>
</ul>
<h2 id="lithuanian">Lithuanian</h2>
<ul>
<li>lithuanian-keyboard (‘Lt’ in mode line)
Lithuanian standard keyboard input method.</li>
<li>lithuanian-numeric (‘LtN’ in mode line)
Lithuanian numeric input method.</li>
</ul>
<h2 id="malayalam">Malayalam</h2>
<ul>
<li>malayalam-inscript (‘MlmIS’ in mode line)
Malayalam keyboard Inscript</li>
<li>malayalam-itrans (‘MlmIT’ in mode line)
Malayalam ITRANS</li>
</ul>
<h2 id="oriya">Oriya</h2>
<ul>
<li>oriya-inscript (‘OriIS’ in mode line)
Oriya keyboard Inscript</li>
<li>oriya-itrans (‘OriIT’ in mode line)
Oriya ITRANS</li>
</ul>
<h2 id="persian">Persian</h2>
<ul>
<li>farsi-transliterate-banan (‘ب’ in mode line)
Intuitive transliteration keyboard layout for persian/farsi.</li>
<li>farsi-isiri-9147 (‘ ف’ in mode line)
Farsi keyboard based on ISIRI-9147.</li>
</ul>
<h2 id="polish">Polish</h2>
<ul>
<li>polish-slash (‘PL>’ in mode line)
Polish diacritics and slash character are input as ‘/[acelnosxzACELNOSXZ/]’.</li>
</ul>
<h2 id="punjabi">Punjabi</h2>
<ul>
<li>punjabi-inscript (‘PnjIS’ in mode line)
Punjabi keyboard Inscript</li>
<li>punjabi-itrans (‘PnjIT’ in mode line)
Punjabi ITRANS</li>
</ul>
<h2 id="romanian">Romanian</h2>
<ul>
<li>romanian-alt-prefix (‘RO>’ in mode line)
Alternative Romanian (româneşte) input method with prefix modifiers</li>
<li>romanian-prefix (‘RO>’ in mode line)
Romanian (româneşte) input method with prefix modifiers</li>
</ul>
<h2 id="russian">Russian</h2>
<ul>
<li>russian-computer (‘RU’ in mode line)
ЙЦУКЕН Russian computer layout</li>
<li>cyrillic-jcuken (‘ЖЙ’ in mode line)
ЙЦУКЕН Russian typewriter layout (ISO 8859-5 encoding).</li>
<li>russian-typewriter (‘ЖЙ’ in mode line)
ЙЦУКЕН Russian typewriter layout (ISO 8859-5 encoding).</li>
</ul>
<h2 id="slovak">Slovak</h2>
<ul>
<li>slovak-prog-3 (‘SK’ in mode line)
Slovak (non-standard) keyboard for programmers #3.</li>
<li>slovak-prog-2 (‘SK’ in mode line)
Slovak (non-standard) keyboard for programmers #2.</li>
<li>slovak-prog-1 (‘SK’ in mode line)
Slovak (non-standard) keyboard for programmers #1.</li>
<li>slovak (‘SK’ in mode line)
Standard Slovak keyboard.</li>
</ul>
<h2 id="slovenian">Slovenian</h2>
<ul>
<li>slovenian (‘Sl’ in mode line)
Slovenian postfix input.</li>
</ul>
<h2 id="spanish">Spanish</h2>
<ul>
<li>spanish-keyboard (‘ES@’ in mode line)
Spanish (Español) input method simulating SUN Spanish keyboard</li>
<li>spanish-postfix (‘ES<’ in mode line)
Spanish (Español) input method with postfix modifiers</li>
<li>spanish-prefix (‘ES>’ in mode line)
Spanish (Español) input method with prefix modifiers</li>
</ul>
<h2 id="tamil">Tamil</h2>
<ul>
<li>tamil-inscript (‘TmlIS’ in mode line)
Tamil keyboard Inscript</li>
<li>tamil-itrans (‘TmlIT’ in mode line)
Tamil ITRANS</li>
<li>tamil-dvorak (‘யளனக’ in mode line)
யளனக Tamil keyboard layout for use with Unicode (UTF-8 encoding)</li>
</ul>
<h2 id="telugu">Telugu</h2>
<ul>
<li>telugu-inscript (‘TlgIS’ in mode line)
Telugu keyboard Inscript</li>
<li>telugu-itrans (‘TlgIT’ in mode line)
Telugu ITRANS</li>
</ul>
<h2 id="thai">Thai</h2>
<ul>
<li>thai-pattachote (‘กป>’ in mode line)
Thai Pattachote input method with TIS620 keyboard layout</li>
<li>thai-kesmanee (‘กก>’ in mode line)
Thai Kesmanee input method with TIS620 keyboard layout</li>
</ul>
<h2 id="tibetan">Tibetan</h2>
<ul>
<li>tibetan-tibkey (‘TIBt’ in mode line)
Tibetan character input by TibKey key assignment.</li>
<li>tibetan-wylie (‘TIBw’ in mode line)
Tibetan character input by Extended Wylie key assignment.</li>
</ul>
<h2 id="turkish">Turkish</h2>
<ul>
<li>turkish-postfix (‘TR<’ in mode line)
Turkish (Türkçe) input method with postfix modifiers.</li>
<li>turkish-alt-postfix (‘TR«’ in mode line)
Turkish (Türkçe) input method with postfix modifiers.</li>
</ul>
<h2 id="utf-8">UTF-8</h2>
<ul>
<li>korean-hangul3 (‘한390’ in mode line)
Hangul 3-Bulsik 390 Input</li>
<li>korean-hangul390 (‘한390’ in mode line)
Hangul 3-Bulsik 390 Input</li>
<li>korean-hangul3f (‘한3f’ in mode line)
Hangul 3-Bulsik final Input</li>
<li>korean-hangul (‘한2’ in mode line)
Hangul 2-Bulsik Input</li>
<li>ucs (‘U+’ in mode line)
Unicode input as hex in the form Uxxxx.</li>
<li>TeX (‘\’ in mode line)
LaTeX-like input method for many characters.
These characters are from the charsets used by the ‘utf-8’ coding
system, including many technical ones. Examples:
'a -> á `{a} -> à
\pi -> π \int -> ∫ ^1 -> ¹</li>
<li>rfc1345 (‘m’ in mode line)
Unicode characters input method using RFC1345 mnemonics (non-ASCII only).</li>
<li>sgml (‘&’ in mode line)
Unicode characters input method using SGML entities.</li>
</ul>
<h2 id="ukrainian">Ukrainian</h2>
<ul>
<li>ukrainian-computer (‘UK’ in mode line)
ЙЦУКЕН Ukrainian (Unicode-based for use with KOI8-U encoding).</li>
<li>cyrillic-ukrainian (‘ЖU’ in mode line)
ЄЇЕРТЗ-ІЎ UKRAINIAN</li>
</ul>
<h2 id="vietnamese">Vietnamese</h2>
<ul>
<li>vietnamese-vni (‘VV’ in mode line)
Vietnamese VNI input method</li>
<li>vietnamese-viqr (‘VQ’ in mode line)
Vietnamese input method with VIQR mnemonic system</li>
<li>vietnamese-telex (‘VT’ in mode line)
Vietnamese telex input method</li>
</ul>
<h2 id="welsh">Welsh</h2>
<ul>
<li>welsh (‘Ŵ’ in mode line)
Welsh postfix input method</li>
</ul>To access multilingual support in Emacs, one easy way is by typing C-\ and then selecting an input method. The following functions are also useful:Introduction to Python2017-05-31T12:08:38+00:002017-05-31T12:08:38+00:00https://charalambosthemistocleous.com//research/project/2017/05/31/python<p>Charalambos Themistocleous</p>
<h3 id="contents">Contents</h3>
<p>1 <a href="#introduction-to-python">Introduction to Python</a></p>
<p>2 <a href="#data-manipulation-with-pandas">Data Manipulation with Pandas</a></p>
<p>2.1 <a href="#series">Series</a></p>
<p>2.2 <a href="#dataframe">DataFrame</a></p>
<p>2.3 <a href="#merging-dataframes">Merging DataFrames</a></p>
<p>2.4 <a href="#date-and-time">Date and Time</a></p>
<p>2.5 <a href="#importing-data">Importing data</a></p>
<p>2.6 <a href="#save-data">Save Data</a></p>
<p>3 <a href="#creating-plots">Creating Plots</a></p>
<p>4 <a href="#basic-descriptive-statistics-using-pandas">Basic Descriptive Statistics using Pandas</a></p>
<h3 id="introduction-to-python">Introduction to Python</h3>
<p>This chapter provides and introduction to Python.</p>
<ol>
<li>
<div id="x1-2002x1">
</div>
<p>Python 2.7 (or higher) (including Python 3)</p>
</li>
<li>
<div id="x1-2004x2">
</div>
<p>pandas 0.11.1 (or higher) and its dependencies</p>
</li>
<li>
<div id="x1-2006x3">
</div>
<p>NumPy 1.6.1 (or higher)</p>
</li>
<li>
<div id="x1-2008x4">
</div>
<p>matplotlib 1.0.0 (or higher)</p>
</li>
<li>
<div id="x1-2010x5">
</div>
<p>IPython 0.12 (or higher)</p>
</li>
<li>
<div id="x1-2012x6">
</div>
<p>NLTK</p>
</li>
</ol>
<ul>
<li>Pandas, is a package that provides functionality for analyzing data
in the form of tables, such as those we have in Excel, LibreOffice
Calc. The most important data structure is the DataFrame which is
very similar to R dataframes. Pandas also provide functionality for
reshaping, sorting, manipulating, etc., data.</li>
<li>The second library we will be using is NumPy, which offers the basic
functionality for conducting mathematics, including statistics,
linear algebra, and Fourier transformations.</li>
<li>Matplotlib provides functionality for creating plots and graphs.</li>
<li>NLTK is a Natural Language Toolkit implemented in Python.</li>
<li>So, to start an analysis add the following code on your code file.
The code imports the libraries and provide a designated name for
each library. So, we will be calling pandas for instance we will use
the name pd followed by a period and the name of a function. This
will become more clear soon.</li>
</ul>
<p>**</p>
<div class="flushright">
[Python code:1.0.0.]
</div>
<pre><code class="language-({.listings})">
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import nltk
</code></pre>
<h3 id="data-manipulation-with-pandas">Data Manipulation with Pandas</h3>
<h4 id="series">Series</h4>
<p>A Series is a single vector of data with an index for each element. A
similar structure in numpy is the array.</p>
<div class="flushright">
[Python code:2.1.0.]
</div>
<pre><code class="language-({.listings})">
measurements = pd.Series([328259, 22781, 30857, 4164, 328387])
measurements
</code></pre>
<p>The printed output is the following:</p>
<div class="flushright">
[Python code:2.1.1.]
</div>
<pre><code class="language-({.listings})">
Out[1]:
0 328259
1 22781
2 30857
3 4164
4 328387
dtype: int64
</code></pre>
<p>Series consist of [values ]and
[indexes], we can call them separately in the
following manner:</p>
<div class="flushright">
[Python code:2.1.2.]
</div>
<pre><code class="language-({.listings})">
measurements.values
Out[2]:
array([328259, 22781, 30857, 4164, 328387])
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.1.3.]
</div>
<pre><code class="language-({.listings})">
measurements.index
Out[3]:
RangeIndex(start=0, stop=5, step=1)
</code></pre>
<p>This says that we have numbers from 0 to 5. The following selects the
number in position [3]:</p>
<div class="flushright">
[Python code:2.1.4.]
</div>
<pre><code class="language-({.listings})">
measurements[3]
Out[4]:
4164
</code></pre>
<p>We can select values based on logical operations as well</p>
<div class="flushright">
[Python code:2.1.5.]
</div>
<pre><code class="language-({.listings})">
measurements[measurements < 20000]
Out[5]:
Ecuador 4164
dtype: int64
</code></pre>
<p>or</p>
<div class="flushright">
[Python code:2.1.6.]
</div>
<pre><code class="language-({.listings})">
measurements[measurements == 22781]
Out[6]:
Argentina 22781
dtype: int64
</code></pre>
<p>These numbers are not very informative so we want to provide labels. So,
if we know that these numbers represent the number of books published in
2010 we might want to provide the name of the country as an index.</p>
<div class="flushright">
[Python code:2.1.7.]
</div>
<pre><code class="language-({.listings})">
measurements = pd.Series([328259, 22781, 30857, 4164, 328387],
index=[’USA’, ’Argentina’, ’Sweden’, ’Ecuador’, ’China’])
measurements
Out[7]:
USA 328259
Argentina 22781
Sweden 30857
Ecuador 4164
China 328387
dtype: int64
</code></pre>
<p>We can use these names to select the value.</p>
<div class="flushright">
[Python code:2.1.8.]
</div>
<pre><code class="language-({.listings})">
measurements[’USA’]
328259
</code></pre>
<p>Also, we can provide both the array of values and the index the own
labels:</p>
<div class="flushright">
[Python code:2.1.9.]
</div>
<pre><code class="language-({.listings})">
measurements.name = ’Book␣Counts’
measurements.index.name = ’Countries’
measurements
Out[71]:
Countries
USA 328259
Argentina 22781
Sweden 30857
Ecuador 4164
China 328387
Name: Book Counts, dtype: int64
</code></pre>
<p>We might be interested to select only the countries whose name ends in
letter ’a’:</p>
<div class="flushright">
[Python code:2.1.10.]
</div>
<pre><code class="language-({.listings})">
measurements[[name.endswith(’a’) or name.endswith(’A’) for name in measurements.index]]
USA 328259
Argentina 22781
China 328387
dtype: int64
</code></pre>
<p>The following provides information about the position of these numbers:</p>
<div class="flushright">
[Python code:2.1.11.]
</div>
<pre><code class="language-({.listings})">
[name.endswith(’a’) or name.endswith(’A’) for name in measurements.index]
[True, True, False, False, True]
</code></pre>
<p>NumPy’s math functions and statistics can be applied to Series, e.g.,</p>
<div class="flushright">
[Python code:2.1.12.]
</div>
<pre><code class="language-({.listings})">
np.mean(measurements)
142889.6
</code></pre>
<p>Series are very common objects to standard dictionaries (dict) in
Python:</p>
<div class="flushright">
[Python code:2.1.13.]
</div>
<pre><code class="language-({.listings})">
Bookpublications = ({’Italy’:59743, ’Argentina’:22781, ’Poland’: 31500, ’Vietnam’: 24589, ’Indonesia’: 24000})
pd.Series(Bookpublications)
Argentina 22781
Indonesia 24000
Italy 59743
Poland 31500
Vietnam 24589
dtype: int64
</code></pre>
<h4 id="dataframe">DataFrame</h4>
<p>**</p>
<div class="flushright">
[Python code:2.2.0.]
</div>
<pre><code class="language-({.listings})">
data = pd.DataFrame(
({’counts’:[ 328259, 22781, 30857, 4164, 328387, 59743, 31500, 24589],
’year’:[2010, 2010, 2010, 2010, 2010, 2005, 2010, 2009],
’country’:[’USA’, ’Argentina’, ’Sweden’, ’Ecuador’, ’China’, ’Italy’,
’Poland’, ’Vietnam’]}))
data
</code></pre>
<p>The output now is a table as we expect it to be:</p>
<div class="flushright">
[Python code:2.2.1.]
</div>
<pre><code class="language-({.listings})">
country counts year
0 USA 328259 2010
1 Argentina 22781 2010
2 Sweden 30857 2010
3 Ecuador 4164 2010
4 China 328387 2010
5 Italy 59743 2005
6 Poland 31500 2010
7 Vietnam 24589 2009
</code></pre>
<p>To select the values of the column, we can use its name:</p>
<div class="flushright">
[Python code:2.2.2.]
</div>
<pre><code class="language-({.listings})">
data[’counts’]
0 328259
1 22781
2 30857
3 4164
4 328387
5 59743
6 31500
7 24589
Name: counts, dtype: int64
</code></pre>
<p>or</p>
<div class="flushright">
[Python code:2.2.3.]
</div>
<pre><code class="language-({.listings})">
data.counts
Out[95]:
0 328259
1 22781
2 30857
3 4164
4 328387
5 59743
6 31500
7 24589
Name: counts, dtype: int64
</code></pre>
<p>By using the order of the columns, we can use their names again:</p>
<div class="flushright">
[Python code:2.2.4.]
</div>
<pre><code class="language-({.listings})">
data[[’country’, ’year’, ’counts’]]
</code></pre>
<p>The index of columns is provided by the following:</p>
<div class="flushright">
[Python code:2.2.5.]
</div>
<pre><code class="language-({.listings})">
data.columns
Out[91]:
Index([’country’, ’counts’, ’year’], dtype=’object’)
</code></pre>
<p>Types and selections:</p>
<div class="flushright">
[Python code:2.2.6.]
</div>
<pre><code class="language-({.listings})">
type(data.counts)
pandas.core.series.Series
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.2.7.]
</div>
<pre><code class="language-({.listings})">
type(data[[’counts’]])
pandas.core.frame.DataFrame
</code></pre>
<p>To select a row in a DataFrame, we index its [ix
]attribute in the following way:</p>
<div class="flushright">
[Python code:2.2.8.]
</div>
<pre><code class="language-({.listings})">
data.ix[3]
Out[98]:
country Ecuador
counts 4164
year 2010
Name: 3, dtype: object
</code></pre>
<p>We might create DataFrames using dictionaries</p>
<div class="flushright">
[Python code:2.2.9.]
</div>
<pre><code class="language-({.listings})">
Alternatively, we can create a DataFrame with a dict of dicts:
In [111]:
data = pd.DataFrame(
({0:({’AA’: 1, ’gender’: ’Male’, ’height’: 168}),
1: ({’AA’: 2, ’gender’: ’Male’, ’height’: 180}),
2: ({’AA’: 3, ’gender’: ’Female’, ’height’: 170}),
3: ({’AA’: 4, ’gender’: ’Female’, ’height’: 169}),
4: ({’AA’: 5, ’gender’: ’Female’, ’height’: 170}),
5: ({’AA’: 6, ’gender’: ’Male’, ’height’: 165})}))
In [112]:
data
Out[112]:
0 1 2 3 4 5
AA 1 2 3 4 5 6
gender Male Male Female Female Female Male
height 168 180 170 169 170 165
</code></pre>
<p>To get a similar output we need to transpose the code:</p>
<div class="flushright">
[Python code:2.2.10.]
</div>
<pre><code class="language-({.listings})">
data = data.T
data
Out[113]:
AA gender height
0 1 Male 168
1 2 Male 180
2 3 Female 170
3 4 Female 169
4 5 Female 170
5 6 Male 165
</code></pre>
<p>Series and DataFrames have indexes and values which are called in the
following way:</p>
<div class="flushright">
[Python code:2.2.11.]
</div>
<pre><code class="language-({.listings})">
data.values
</code></pre>
<p>The output is following</p>
<div class="flushright">
[Python code:2.2.12.]
</div>
<pre><code class="language-({.listings})">
array([[1, 2, 3, 4, 5, 6],
[’Male’, ’Male’, ’Female’, ’Female’, ’Female’, ’Male’],
[168, 180, 170, 169, 170, 165]], dtype=object)
</code></pre>
<p>and the index is called by <a href="{.rm-lmtt-10x-x-109}">data.index </a>and the
result is:</p>
<div class="flushright">
[Python code:2.2.13.]
</div>
<pre><code class="language-({.listings})">
Index([’AA’, ’gender’, ’height’], dtype=’object’)
</code></pre>
<p>We cannot change the index, if we try, e.g., data.index[1] = 5 Python
will provide the following message: “Index does not support mutable
operations”.</p>
<p>To select a column:</p>
<div class="flushright">
[Python code:2.2.14.]
</div>
<pre><code class="language-({.listings})">
heights = data.height
heights
Out[116]:
0 168
1 180
2 170
3 169
4 170
5 165
Name: height, dtype: object
</code></pre>
<p>To change a value</p>
<div class="flushright">
[Python code:2.2.15.]
</div>
<pre><code class="language-({.listings})">
heights[5] = 191
heights
Out[117]:
0 168
1 180
2 170
3 169
4 170
5 191
Name: height, dtype: object
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.2.16.]
</div>
<pre><code class="language-({.listings})">
data
Out[118]:
AA gender height
0 1 Male 168
1 2 Male 180
2 3 Female 170
3 4 Female 169
4 5 Female 170
5 6 Male 191
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.2.17.]
</div>
<pre><code class="language-({.listings})">
ht = data.height.copy()
ht[5] = 180
data
Out[141]:
AA gender height
0 1 Male 168
1 2 Male 180
2 3 Female 177
3 4 Female 169
4 5 Female 170
5 6 Male 191
</code></pre>
<p>Create/ modify columns by assignment:</p>
<div class="flushright">
[Python code:2.2.18.]
</div>
<pre><code class="language-({.listings})">
data.height[2] = 177
data
Out[122]:
AA gender height
0 1 Male 168
1 2 Male 180
2 3 Female 177
3 4 Female 169
4 5 Female 170
5 6 Male 180
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.2.19.]
</div>
<pre><code class="language-({.listings})">
data[’Status’] = ’Printed’
data
Out[143]:
AA gender height Status
0 1 Male 168 Printed
1 2 Male 180 Printed
2 3 Female 177 Printed
3 4 Female 169 Printed
4 5 Female 170 Printed
5 6 Male 191 Printed
</code></pre>
<p>The following method does not create a column:</p>
<div class="flushright">
[Python code:2.2.20.]
</div>
<pre><code class="language-({.listings})">
data.libraryNo = 999
data
Out[146]:
AA gender height Status
0 1 Male 168 Printed
1 2 Male 180 Printed
2 3 Female 177 Printed
3 4 Female 169 Printed
4 5 Female 170 Printed
5 6 Male 191 Printed
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.2.21.]
</div>
<pre><code class="language-({.listings})">
data.libraryNo
999
</code></pre>
<p>We can define a Series object as column in a DataFrame</p>
<div class="flushright">
[Python code:2.2.22.]
</div>
<pre><code class="language-({.listings})">
test = pd.Series([0]*2 + [3]*2)
test
data[’test’] = test
data
</code></pre>
<p>We created a Series of 4 numbers. Note however that the DataFrame
contains six rows. This is not a problem when we use numbers because
Python automatically add NaN to fill the empty rows. Nevertheless, when
we employ other data structures such as strings Python will show an
error message: ValueError: Length of values does not match length of
index.</p>
<div class="flushright">
[Python code:2.2.23.]
</div>
<pre><code class="language-({.listings})">
# Popular Authors
authors = [’Stephen␣King’, ’J.K.␣Rowling’, ’Mark␣Twain’, ’George␣R.␣R.␣Martin’]
data[’authors’] = authors
</code></pre>
<p>To correct the error, we simply add a string Series that has the same
length as the DataFrame</p>
<div class="flushright">
[Python code:2.2.24.]
</div>
<pre><code class="language-({.listings})">
authors = [’Stephen␣King’, ’J.K.␣Rowling’, ’Mark␣Twain’, ’George␣R.␣R.␣Martin’, ’Charles␣Dickens’, ’Arthur␣Conan␣Doyle’]
data[’favorite_authors’] = authors
</code></pre>
<p>This time the output is correct:</p>
<div class="flushright">
[Python code:2.2.25.]
</div>
<pre><code class="language-({.listings})">
data
AA gender height Status test favorite_authors
0 1 Male 168 Printed 0.0 Stephen King
1 2 Male 180 Printed 0.0 J.K. Rowling
2 3 Female 177 Printed 3.0 Mark Twain
3 4 Female 169 Printed 3.0 George R. R. Martin
4 5 Female 170 Printed NaN Charles Dickens
5 6 Male 165 Printed NaN Arthur Conan Doyle
</code></pre>
<p>To delete the column test from the DataFrame data</p>
<div class="flushright">
[Python code:2.2.26.]
</div>
<pre><code class="language-({.listings})">
del data[’test’]
data
AA gender height Status authors
0 1 Male 168 Printed Stephen King
1 2 Male 180 Printed J.K. Rowling
2 3 Female 177 Printed Mark Twain
3 4 Female 169 Printed George R. R. Martin
4 5 Female 170 Printed Charles Dickens
5 6 Male 165 Printed Arthur Conan Doyle
</code></pre>
<p>To get the data as a simple <a href="{.rm-lmtt-10x-x-109}">narray </a>we need to
employ the attribute <a href="{.rm-lmtt-10x-x-109}">values</a>.</p>
<div class="flushright">
[Python code:2.2.27.]
</div>
<pre><code class="language-({.listings})">
array([[1, ’Male’, 168, ’Printed’, ’Stephen␣King’],
[2, ’Male’, 180, ’Printed’, ’J.K.␣Rowling’],
[3, ’Female’, 177, ’Printed’, ’Mark␣Twain’],
[4, ’Female’, 169, ’Printed’, ’George␣R.␣R.␣Martin’],
[5, ’Female’, 170, ’Printed’, ’Charles␣Dickens’],
[6, ’Male’, 165, ’Printed’, ’Arthur␣Conan␣Doyle’]], dtype=object)
</code></pre>
<p>The dtype here is object because we have numeric and string data and
differs when we have numeric or other type of data.</p>
<h4 id="merging-dataframes">Merging DataFrames</h4>
<p>df1 = pd.DataFrame(’A’: [’A0’, ’A1’, ’A2’, ’A3’], ’B’: [’B0’, ’B1’,
’B2’, ’B3’], ’C’: [’C0’, ’C1’, ’C2’, ’C3’], ’D’: [’D0’, ’D1’, ’D2’,
’D3’], index=[0, 1, 2, 3])</p>
<hr />
<p><img src="https://charalambosthemistocleous.com//img/img_papers/figuresR/merging_concat.png" alt="screenshot" /></p>
<p>Figure1: Example from
https://pandas.pydata.org/pandas-docs/stable/merging.html</p>
<hr />
<p>For more information see
http://pandas.pydata.org/pandas-docs/stable/merging.html.</p>
<h4 id="date-and-time">Date and Time</h4>
<p>Python can manipulate date and time objects using the
<a href="{.rm-lmtt-10x-x-109}">datetime</a> module. It allows the production of
calculations using time and date objects and also provides classes for
controlling the output (see also,
https://docs.python.org/2/library/datetime.html)</p>
<div class="flushright">
[Python code:2.4.0.]
</div>
<pre><code class="language-({.listings})">
from datetime import datetime
#%%
now = datetime.now()
now
</code></pre>
<p>and the result is</p>
<div class="flushright">
[Python code:2.4.1.]
</div>
<pre><code class="language-({.listings})">
</code></pre>
<p>To get the date only</p>
<div class="flushright">
[Python code:2.4.2.]
</div>
<pre><code class="language-({.listings})">
now.date()
</code></pre>
<p>and the output in this case is datetime.date(2017, 1, 6). To find the day</p>
<div class="flushright">
[Python code:2.4.3.]
</div>
<pre><code class="language-({.listings})">
now.day
</code></pre>
<p>and the output is 6. Also, for the time</p>
<div class="flushright">
[Python code:2.4.4.]
</div>
<pre><code class="language-({.listings})">
now.time()
</code></pre>
<p>and the output is datetime.time(14, 41, 4, 481168). We can also ask
which is the week day:</p>
<div class="flushright">
[Python code:2.4.5.]
</div>
<pre><code class="language-({.listings})">
now.weekday()
</code></pre>
<p>that will generate the output 4</p>
<div class="flushright">
[Python code:2.4.6.]
</div>
<pre><code class="language-({.listings})">
from datetime import date, time
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.4.7.]
</div>
<pre><code class="language-({.listings})">
time(3, 24)
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.4.8.]
</div>
<pre><code class="language-({.listings})">
age = now - datetime(1980, 8, 16)
age/365
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.4.9.]
</div>
<pre><code class="language-({.listings})">
days=(datetime(2017, 3, 10) - datetime(2017, 8, 16))
days.days
</code></pre>
<h4 id="importing-data">Importing data</h4>
<p>We suggest that you use comma-separated value or CSV files when
interacting with Python and other statistical software. In computing,
CSV files stores tabular data (numbers and text) in plain text. Columns
are separated by commas; rows are terminated by newlines. This file
format is not proprietary, the files can be edited in text editors and
spreadsheet software, such as Excel and Calc.</p>
<div class="flushright">
[Python code:2.5.0.]
</div>
<pre><code class="language-({.listings})">
dur = pd.read_csv("data/duration.csv", sep=";")
dur
Out[153]:
experiment duration
0 A 199
1 A 184
2 A 242
3 A 236
4 A 216
5 A 176
6 A 223
7 A 186
8 A 210
9 A 220
.. ... ...
95 C 221
96 C 239
97 C 235
98 C 248
99 C 204
100 C 226
101 C 206
102 C 194
103 C 205
104 C 182
[105 rows x 2 columns]
</code></pre>
<p>We can also import another dataframe and add a column titled AA.</p>
<div class="flushright">
[Python code:2.5.1.]
</div>
<pre><code class="language-({.listings})">
fricative = pd.read_table("data/fricatives.csv", sep=’,’)
fricative[’AA’] = pd.Series(range(1,8827))
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.5.2.]
</div>
<pre><code class="language-({.listings})">
fricative.head()
# %%
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.5.3.]
</div>
<pre><code class="language-({.listings})">
0 1 0.060398 32.671794 757.605236 1104.704765 13.835014 210.523631
1 2 0.045656 38.906220 732.582945 1065.089424 12.654465 186.856393
2 3 0.050907 47.209304 647.696728 1627.357767 7.647966 61.615315
3 4 0.051049 41.703970 1017.179353 2318.797907 5.570367 33.783925
4 5 0.028408 44.345609 1132.524942 848.894793 7.105495 108.453910
Segment Vowel Variety Stress Voice Position AA
0 d a CG Unstressed Voiced Middle 1.0
1 d a CG Unstressed Voiced Middle 2.0
2 d a CG Unstressed Voiced Middle 3.0
3 d a CG Unstressed Voiced Middle 4.0
4 d a CG Unstressed Voiced Middle 5.0
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.5.4.]
</div>
<pre><code class="language-({.listings})">
list(range(1,len(fricative.index)))
</code></pre>
<p>We can skip rows if we do not want them in the analysis:</p>
<div class="flushright">
[Python code:2.5.5.]
</div>
<pre><code class="language-({.listings})">
testfric=pd.read_csv("data/fricatives.csv", skiprows=[2,3,4,5,6])
len(testfric.index)
</code></pre>
<p>To import a small number of rows from, we can use
<a href="{.rm-lmtt-10x-x-109}">nrows</a>:</p>
<div class="flushright">
[Python code:2.5.6.]
</div>
<pre><code class="language-({.listings})">
pd.read_csv("data/fricatives.csv", nrows=4)
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.5.7.]
</div>
<pre><code class="language-({.listings})">
get_ipython().system(’cat␣data/fricatives.csv’)
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.5.8.]
</div>
<pre><code class="language-({.listings})">
pd.read_csv("data/fricatives.csv").head(20)
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:2.5.9.]
</div>
<pre><code class="language-({.listings})">
pd.isnull(pd.read_csv("data/fricatives.csv")).head(20)
</code></pre>
<p>When we import data Python identifies empty cells, or NA values as NA
data; to designated that specific values or symbols should be considered
NA values, we can specify this as follows</p>
<div class="flushright">
[Python code:2.5.10.]
</div>
<pre><code class="language-({.listings})">
pd.read_csv("data/fricatives.csv", na_values=[’?’, -9999999]).head(20)
</code></pre>
<h4 id="save-data">Save Data</h4>
<p>There are different methods to save data. To save data in CSV format</p>
<div class="flushright">
[Python code:2.6.0.]
</div>
<pre><code class="language-({.listings})">
# ## Writing Data to Files
fricative.to_csv("fricative-01.csv")
</code></pre>
<h3 id="creating-plots">Creating Plots</h3>
<p>Using pandas we can also make some basic plotting.</p>
<div class="flushright">
[Python code:3.0.0.]
</div>
<pre><code class="language-({.listings})">
fricative[’duration’].plot()
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:3.0.1.]
</div>
<pre><code class="language-({.listings})">
##############################################################
# %%
fricative = pd.read_csv("data/fricatives.csv", sep=’,’)
fricative[’duration’].plot()
# %%
fricative[’duration’].plot(kind=’hist’)
# %%
fricative[’duration’].plot(kind=’box’,showfliers=False)
</code></pre>
<hr />
<p>Duration</p>
<p><img src="https://charalambosthemistocleous.com//img/img_papers/figuresR/PythonIntro_duration.png" alt="screenshot" />
Figure2: Duration in sec.</p>
<hr />
<hr />
<p><img src="https://charalambosthemistocleous.com//img/img_papers/figuresR/Duration.png" alt="screenshot" />
————————————————————————</p>
<hr />
<p><img src="https://charalambosthemistocleous.com//img/img_papers/figuresR/boxduration.png" alt="screenshot" /></p>
<hr />
<p>import matplotlib.pyplot as plt plt.plot([1,2,3,4]) plt.ylabel(’some
numbers’) plt.show()</p>
<h3 id="basic-descriptive-statistics-using-pandas">Basic Descriptive Statistics using Pandas</h3>
<p>**</p>
<div class="flushright">
[Python code:4.0.0.]
</div>
<pre><code class="language-({.listings})">
In [208]:
fricative.sum()
Out[208]:
duration 827.811
intensity 346024
cog 5.05981e+07
sdev 2.40776e+07
skew 21699.9
kurt 328392
Segment dddddddddddddddddddddddddddddddddddddddddddddd...
Vowel aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
Variety CGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCG...
Stress UnstressedUnstressedUnstressedUnstressedUnstre...
Voice VoicedVoicedVoicedVoicedVoicedVoicedVoicedVoic...
Position MiddleMiddleMiddleMiddleMiddleMiddleMiddleMidd...
AA 3.89536e+07
dtype: object
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:4.0.1.]
</div>
<pre><code class="language-({.listings})">
In [209]:
fricative.mean()
Out[209]:
duration 0.093782
intensity 39.254023
cog 5732.200660
sdev 2727.724598
skew 2.458354
kurt 37.203150
AA 4413.500000
dtype: float64
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:4.0.2.]
</div>
<pre><code class="language-({.listings})">
In [211]:
fricative.std()
Out[211]:
duration 0.031759
intensity 8.272744
cog 3425.508087
sdev 1339.636724
skew 4.785687
kurt 138.622132
AA 2547.991071
dtype: float64
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:4.0.3.]
</div>
<pre><code class="language-({.listings})">
In [212]:
fricative.count()
Out[212]:
duration 8827
intensity 8815
cog 8827
sdev 8827
skew 8827
kurt 8827
Segment 8827
Vowel 8827
Variety 8827
Stress 8827
Voice 8827
Position 8827
AA 8826
dtype: int64
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:4.0.4.]
</div>
<pre><code class="language-({.listings})">
fricative.intensity.hasnans
Out[215]:
True
In [221]:
fricative.intensity.isnull().sum()
Out[221]:
12
</code></pre>
<p>Describe:</p>
<div class="flushright">
[Python code:4.0.5.]
</div>
<pre><code class="language-({.listings})">
In [222]:
fricative.describe()
/Users/haristhemistocleous/anaconda3/lib/python3.5/site-packages/numpy/lib/function_base.py:3834: RuntimeWarning: Invalid value encountered in percentile
RuntimeWarning)
Out[222]:
duration intensity cog sdev skew \
count 8827.000000 8815.000000 8827.000000 8827.000000 8827.000000
mean 0.093782 39.254023 5732.200660 2727.724598 2.458354
std 0.031759 8.272744 3425.508087 1339.636724 4.785687
min 0.020333 5.278827 419.757883 228.697624 -5.250996
25% 0.071596 NaN 2385.869561 1771.421219 -0.113557
50% 0.091452 NaN 6175.724355 2368.203536 0.925865
75% 0.112412 NaN 8344.008050 3595.757817 2.953676
max 0.316844 69.455969 18606.542539 9253.436646 59.853567
kurt AA
count 8827.000000 8826.000000
mean 37.203150 4413.500000
std 138.622132 2547.991071
min -1.892874 1.000000
25% 0.512395 NaN
50% 3.432032 NaN
75% 12.453753 NaN
max 3999.613892 8826.000000
describe can detect non-numeric data and sometimes yield useful information about it.
</code></pre>
<p>**</p>
<div class="flushright">
[Python code:4.0.6.]
</div>
<pre><code class="language-({.listings})">
fricative.sdev.describe()
Out[224]:
count 8827.000000
mean 2727.724598
std 1339.636724
min 228.697624
25% 1771.421219
50% 2368.203536
75% 3595.757817
max 9253.436646
Name: sdev, dtype: float64
</code></pre>Charalambos ThemistocleousAcademy of Athens: The Utilitarian dictionary of Modern Greek2014-12-31T12:08:38+00:002014-12-31T12:08:38+00:00https://charalambosthemistocleous.com//research/project/2014/12/31/Utilitarian_Dictionary<p>The Utilitarian dictionary of Modern Greek Language is one of the most important dictionaries of Modern Greek to this day. I feel very honored that I contributed to its development as a young researcher in 2004-2006.</p>
<p>It has been published by the Academy of Athens in 2014.</p>
<p>The dictionary is the outcome of years of research by a research group led by <strong>Professor Christoforos Charalambakis</strong></p>
<p>The dictionary contains approximately 75,000 entries and fixed expressions out of 120,000 available in the electronic database.</p>
<p>Large corpora and lexicographic databases were employed, such as the National Thesaurus of Greek Language, the Inter-Active Terminology for Europe (IATE), and electronic databases and dictionaries of English, French, German, Italian, and Spanish, and internal databases of the Academy of Athens).</p>
<p>The Academy of Athens in a press release published in October 31 2014, states that “One of the basic virtues of the Dictionary is that it describes Modern Greek language without prejudice based on the demands of modern lexicographical practice implies internationally”.</p>
<p><img src="/img/img_papers/lex.jpg" alt="screenshot" /></p>
<h1 id="references">References</h1>
<p>Hesse, Rolf. 2015. A short presentation of Χρηστικό Λεξικό της Νεοελληνικής Γλώσσας της Ακαδημίας Αθηνών. <em>Scandinavian Journal of Byzantine and Modern Greek Studies</em>, 1, 131–140.</p>
<p>Livemedia. Utilitarian Dictionary of Modern Greek Language Academy of Athens, https://www.livemedia.com/album/19694</p>
<p>Mackridge, Peter 2015. Ένα μεγάλο επίτευγμα: Χρηστικό Λεξικό της Ακαδημίας Αθηνών. <em>The Athens Review of Books</em>, 60.</p>
<p>Ακαδημία Αθηνών 2014. Δελτίο Τύπου. Χρηστικό Λεξικό της Νεοελληνικής Γλώσσας. https://www.academyofathens.gr/el/node/1266</p>
<p>Αναστασιάδη-Συμεωνίδη, Άννα 2015. Ποιο λεξικό να συμβουλεύομαι; <em>Φιλόλογος</em>, 160, 238–244. Ψαροπούλου, Αθηνά 2015. Νέεες ετυμολογίες του Χρηστικού Λεξικού της Νεοελληνικής Γλώσσας της Ακαδημίας Αθηνών, <em>Φιλόλογος</em>, 160, 245–250.</p>
<p>Ανδρέου, Ευάγγελος 2015. <em>Αιολικά Γράμματα</em>, 274, 43–44.</p>
<p>Βασιλάκης, Μανώλης 2015. Το λεξικό και τα λεξικογραφήματα. <em>The Athens Review of Books</em>, 60, 54–57.</p>
<p>Γούτσος, Διονύσης 2015. Βιλιοκρισία του Χρηστικού Λεξικού της Νεοελληνικής Γλώσσας, <em>Γλωσσολογία</em>, 23,2015, 51–56.</p>
<p>Δελλή, Δήμητρα 2015. Οι χρήσιμες λέξεις. <em>The Books’ Journal,</em> 53, 48–51.</p>
<p>Καζάζης, Γιάννης Ν. 2015. Η Νεοελληνική της Τεχνολογικής Εποχής και της ΕΕ: Το Χρηστικό Λεξικό της Ακαδημίας Αθηνών. <em>The Athens Review of Books</em>, 67, 56–62.</p>The Utilitarian dictionary of Modern Greek Language is one of the most important dictionaries of Modern Greek to this day. I feel very honored that I contributed to its development as a young researcher in 2004-2006.