所以我的目标是读取由Geocoder创建的CSV文件,该文件烦人地将字符串值放入空格和纬度或经度值......我可以通过所有这些excel单元格并手动拆分它们,但我真的很想改为读取CSV并仅使用空格作为分隔符并过滤掉所有字符串值。我知道如何导入CSV,甚至如何指定空格作为分隔符我认为我...但我不明白如何过滤掉所有字符串值并仅保存全新Excel中的数值片。有谁知道怎么做?
以下是我到目前为止划分空白区域的代码: pd.read_csv(' FILE.CSV',delim_whitespace =真)
答案 0 :(得分:4)
使用pd.read_csv
来阅读您的CSV,select_dtypes
仅选择数字列,并使用to_csv
仅将数字列保存到CSV。
df = pd.read_csv('file.csv', delim_whitespace=True)
df.select_dtypes(['float']).to_csv('file.csv')
如果您的文件没有标题,则在阅读CSV时需要添加header=None
。
df
a b c
0 1.0 0 foo
1 2.0 0 NaN
2 1.0 1 bar
3 1.0 1 foo
4 NaN 1 baz
5 3.0 1 foo
6 3.0 1 bar
df.select_dtypes(['float'])
a
0 1.0
1 2.0
2 1.0
3 1.0
4 NaN
5 3.0
6 3.0
如果出于某种原因,您想要保存整数列,请将float
更改为number
:
df.select_dtypes(['number'])
a b
0 1.0 0
1 2.0 0
2 1.0 1
3 1.0 1
4 NaN 1
5 3.0 1
6 3.0 1
只需链接一个.to_csv
来电。
答案 1 :(得分:0)
如果你将数据分开,你可以使用它:
df.convert_objects(convert_numeric=True).dropna(axis=1)
您可以在最后添加.to_csv('your_file_name.csv')
。