Geo*_*g B 5 python types dataframe python-3.x pandas
我想将csv文件导入到pandas数据框。有一列带有ID的ID,其中仅包含数字,但并非每一行都有ID。
ID xyz
0 12345 4.56
1 45.60
2 54231 987.00
Run Code Online (Sandbox Code Playgroud)
我想将此列读为String,但是即使我用
df=pd.read_csv(filename,dtype={'ID': str})
我懂了
ID xyz
0 '12345.0' 4.56
1 NaN 45.60
2 '54231.0' 987.00
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法可以将ID作为不含小数的字符串获取,而'12345'无需在导入表后编辑字符串?
解决方案可能是这样,但在您导入 df 之后:
df = pd.read_csv(filename)
df['ID'] = df['ID'].astype(int).astype(str)
Run Code Online (Sandbox Code Playgroud)
或者因为有NaN:
df['ID'] = df['ID'].apply(lambda x: x if pd.isnull(x) else str(int(x)))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2903 次 |
| 最近记录: |