質問編集履歴
3
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -5,7 +5,23 @@
|
|
5
5
|
### 実現したいこと
|
6
6
|
|
7
7
|
1つ目のファイル(wals_languages_joshi.csv)のName列と2つ目のファイル(Joshi2020_list.csv)のname列の名称が一致した場合,2つ目のファイルのscore列を1つ目に追加したいです. (下記参照)
|
8
|
-
しかし,1つ目のファイルにname列とscore列が追加されたものの,
|
8
|
+
しかし,1つ目のファイルにname列とscore列が追加されたものの,エラーが出たのでお知恵をお借りしたいです.よろしくお願いします.
|
9
|
+
### エラーメッセージ
|
10
|
+
```
|
11
|
+
Traceback (most recent call last):
|
12
|
+
File "/Users/carlobroschi_imac/Workspace/wals_and_joshi.py", line 8, in <module>
|
13
|
+
after_pd = after_pd.capitalize()
|
14
|
+
File "/opt/homebrew/lib/python3.9/site-packages/pandas/core/generic.py", line 5575, in __getattr__
|
15
|
+
return object.__getattribute__(self, name)
|
16
|
+
AttributeError: 'DataFrame' object has no attribute 'capitalize'
|
17
|
+
carlobroschi_imac@CarlonoiMac Workspace % python3 wals_and_joshi.py
|
18
|
+
Traceback (most recent call last):
|
19
|
+
File "/Users/carlobroschi_imac/Workspace/wals_and_joshi.py", line 8, in <module>
|
20
|
+
after_pd = after_pd.str.capitalize()
|
21
|
+
File "/opt/homebrew/lib/python3.9/site-packages/pandas/core/generic.py", line 5575, in __getattr__
|
22
|
+
return object.__getattribute__(self, name)
|
23
|
+
AttributeError: 'DataFrame' object has no attribute 'str'
|
24
|
+
```
|
9
25
|
|
10
26
|
### 該当のソースコード
|
11
27
|
|
@@ -16,7 +32,7 @@
|
|
16
32
|
|
17
33
|
before_pd = pd.read_csv('wals_languages_joshi.csv')
|
18
34
|
after_pd = pd.read_csv('Joshi2020_list.csv')
|
19
|
-
|
35
|
+
after_pd = after_pd.str.capitalize()
|
20
36
|
f=pd.merge(before_pd, after_pd, left_on='Name', right_on='name', how='outer')
|
21
37
|
|
22
38
|
f.to_csv('result.csv',index=False, encoding='utf-8')
|
2
結果の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -30,6 +30,16 @@
|
|
30
30
|
Arabic (Chadian),Afro-Asiatic,,Semitic,Africa,shu
|
31
31
|
Abidji,Niger-Congo,,Kwa,Africa,abi
|
32
32
|
```
|
33
|
+
### 現在の出力
|
34
|
+
```result.csv
|
35
|
+
Name,Family,Subfamily,Genus,Macroarea,ISO639P3code,name,score
|
36
|
+
Arapesh (Abu),Torricelli,,Kombio-Arapesh,,,,
|
37
|
+
Aari,Afro-Asiatic,Omotic,South Omotic,Africa,aiw,,
|
38
|
+
Abau,Sepik,,Upper Sepik,Papunesia,aau,,
|
39
|
+
Arabic (Chadian),Afro-Asiatic,,Semitic,Africa,shu,,
|
40
|
+
Abidji,Niger-Congo,,Kwa,Africa,abi,,
|
41
|
+
```
|
42
|
+
|
33
43
|
### 使用ファイル
|
34
44
|
```wals_languages_joshi.csv
|
35
45
|
Name,Family,Subfamily,Genus,Macroarea,ISO639P3code
|
1
コードの改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -5,24 +5,7 @@
|
|
5
5
|
### 実現したいこと
|
6
6
|
|
7
7
|
1つ目のファイル(wals_languages_joshi.csv)のName列と2つ目のファイル(Joshi2020_list.csv)のname列の名称が一致した場合,2つ目のファイルのscore列を1つ目に追加したいです. (下記参照)
|
8
|
-
お知恵をお借りしたいです.よろしくお願いします.
|
8
|
+
しかし,1つ目のファイルにname列とscore列が追加されたものの,中身が何も伴っていない状態なので,お知恵をお借りしたいです.よろしくお願いします.
|
9
|
-
|
10
|
-
### エラーメッセージ
|
11
|
-
|
12
|
-
```
|
13
|
-
Traceback (most recent call last):
|
14
|
-
File "/Users/carlobroschi_imac/Workspace/wals_and_joshi.py", line 8, in <module>
|
15
|
-
f=pd.merge(before_pd, after_pd,
|
16
|
-
File "/opt/homebrew/lib/python3.9/site-packages/pandas/core/reshape/merge.py", line 107, in merge
|
17
|
-
op = _MergeOperation(
|
18
|
-
File "/opt/homebrew/lib/python3.9/site-packages/pandas/core/reshape/merge.py", line 700, in __init__
|
19
|
-
) = self._get_merge_keys()
|
20
|
-
File "/opt/homebrew/lib/python3.9/site-packages/pandas/core/reshape/merge.py", line 1097, in _get_merge_keys
|
21
|
-
right_keys.append(right._get_label_or_level_values(rk))
|
22
|
-
File "/opt/homebrew/lib/python3.9/site-packages/pandas/core/generic.py", line 1840, in _get_label_or_level_values
|
23
|
-
raise KeyError(key)
|
24
|
-
KeyError: 'Name'
|
25
|
-
```
|
26
9
|
|
27
10
|
### 該当のソースコード
|
28
11
|
|
@@ -34,8 +17,7 @@
|
|
34
17
|
before_pd = pd.read_csv('wals_languages_joshi.csv')
|
35
18
|
after_pd = pd.read_csv('Joshi2020_list.csv')
|
36
19
|
|
37
|
-
f=pd.merge(before_pd, after_pd,
|
38
|
-
|
20
|
+
f=pd.merge(before_pd, after_pd, left_on='Name', right_on='name', how='outer')
|
39
21
|
|
40
22
|
f.to_csv('result.csv',index=False, encoding='utf-8')
|
41
23
|
```
|