【发布时间】:2018-11-30 23:58:57
【问题描述】:
Image of my data frame 我正在 Python Jupyter Notebooks 中进行一些数据分析。
我知道之前有人问过这个问题,但我找不到适用于这种情况的解决方案。
我有一个包含 3 列的数据框(CALLED DATA);见上面的链接。
注意:data.intermediary 的每一行可能包含多个航路点。 data.start 和 data.end 每行只有一对坐标。
在查看行和列的数据类型时,我发现:
data.dtypes
start object
intermediary object
end object
dtype: object
当我检查单个元素时;
data.iloc[0,0]
> "('24.957055', ' 114.740156')"
type(data.iloc[0,0])
> str
到目前为止一切都很好。但是,我需要使用这些坐标来提供给 Google 地图 API,并且它们需要采用浮点格式。
如何将 3 列中每一列中的所有这些坐标对从字符串转换为浮点数?
我试过了;
data.iloc[0,0].astype(float)
> AttributeError: 'str' object has no attribute 'astype'
x = data.iloc[1,2]
type(x)
> str
然后:
float(x)
> ValueError: could not convert string to float: "('24.8913208', '114.5740475')"
pd.to_numeric(data.iloc[0,0])
> ValueError: Unable to parse string "('54.957055', ' -7.740156')" at position 0
我的理想输出:
start, intermediary, end
0 24.957055,114.740156 39.956915136264,-6.753690062122 34.957055,114.740156
这些坐标对都是浮点数对
谁能指出我的错误?
【问题讨论】:
-
为什么你的一些栏目中间有撇号
-
我将数据框保存到一个笔记本中的 CSV 文件中,当我在另一个笔记本中读取该 CSV 文件时,我看到了撇号
-
不,我在问为什么你想要的输出有撇号
-
抱歉,错字。现已修复
-
你能在你的 CSV 文件中添加一个条目吗
标签: python pandas jupyter-notebook