问题:
嗨,我正在尝试在熊猫数据框中的每一行中大写第一列的第一个单词,当我尝试这样做时,我要么删除了数据框中的其他行,要么最后一个单词没有被大写。
当前代码:
import pandas as pd
df1 = pd.read_csv('foo.csv')
df2 = df1.replace('_', ' ', regex=True)
df2.Species.str.capitalize()
df2.to_csv('bar.csv',index=False)
所需的输出:
保留在df2中所做的替换,将下划线更改为空格,同时将新替换的df2中的第一个单词大写,然后保存为csv。
+-----------------------------+--------+-----+-----------+
| Species | ID | OGT | DB |
+-----------------------------+--------+-----+-----------+
| Streptomyces cirratus | 68187 | 28 | DSMZ |
| Halogeometricum borinquense | 60847 | 37 | ATCC/DSMZ |
| Sphingobium japonicum | 332056 | 28 | DSMZ |
+-----------------------------+--------+-----+-----------+
输入CSV子集:
+-----------------------------+--------+-----+-----------+
| Species | ID | OGT | DB |
+-----------------------------+--------+-----+-----------+
| streptomyces_cirratus | 68187 | 28 | DSMZ |
| halogeometricum_borinquense | 60847 | 37 | ATCC/DSMZ |
| sphingobium_japonicum | 332056 | 28 | DSMZ |
+-----------------------------+--------+-----+-----------+
答案 0 :(得分:1)
需要分配回输出:
df2.Species = df2.Species.str.capitalize()
或者如果仅需要替换列Species
:
df1.Species = df1.Species.replace('_', ' ', regex=True).str.capitalize()
df1.to_csv('bar.csv',index=False)