使用 Pandas 编辑 CSV 文件中的数据

Editing data in CSV files using Pandas

我有一个包含以下数据的 CSV 文件:

Time    Pressure
 0  2.9852.988
 10 2.9882.988
 20 2.9902.990
 30 2.9882.988
 40 2.9852.985
 50 2.9842.984
 60 2.9852.985.....

出于某种原因,第二列由 2 个小数点分隔。我正在尝试使用 pandas 创建一个数据帧,但如果不删除第二个小数点就无法继续。我无法手动执行此操作,因为我的文件中有数千个数据点。有什么想法吗?

您可以调用向量化的 str 方法在小数点处拆分字符串,加入拆分的结果但丢弃最后一个元素,这会生成例如一个列表 [2,9852] 然后您将其加入带小数点:

In [28]:

df['Pressure'].str.split('.').str[:-1].str.join('.')
Out[28]:
0    2.9852
1    2.9882
2    2.9902
3    2.9882
4    2.9852
5    2.9842
6    2.9852
Name: Pressure, dtype: object

如果要将字符串转换为浮点数,请调用 astype:

In [29]:

df['Pressure'].str.split('.').str[:-1].str.join('.').astype(np.float64)
Out[29]:
0    2.9852
1    2.9882
2    2.9902
3    2.9882
4    2.9852
5    2.9842
6    2.9852
Name: Pressure, dtype: float64

记得把转换赋值回原来的df:

df['Pressure'] = df['Pressure'].str.split('.').str[:-1].str.join('.').astype(np.float64)