Python df返回NaN而不是值

时间:2020-06-23 07:32:48

标签: python pandas dataframe

我正在尝试将一个csv文件导入python,但是值不会显示。

data = pd.read_csv("test.csv", header=None)

df=pd.DataFrame(data, columns=['time','x','y'])

print(df)

输出显示为:

time   x   y

0     NaN NaN NaN

1     NaN NaN NaN

2     NaN NaN NaN

3     NaN NaN NaN

4     NaN NaN NaN
..    ...  ..  ..
875   NaN NaN NaN
876   NaN NaN NaN
877   NaN NaN NaN
878   NaN NaN NaN
879   NaN NaN NaN

CSV文件如下所示: csv

我希望能够减去时间来找出差异。到目前为止,我已经尝试过time_1-time_0,但随后它还会返回NaN。

有人可以提供一些指导吗?

2 个答案:

答案 0 :(得分:0)

如果您尝试读取CSV文件并将其存储到Dataframe中,那么read_csv应该可以做到这一点。

您不需要第二行。我认为您正在使用第二行创建标题名称。您可以在阅读csv本身时做到这一点。

这是您的操作方式。

header_list = ['time','x','y']
my_df = pd.read_csv("test.csv", names=header_list)

print(my_df)

答案 1 :(得分:0)

pandas.read_csv()已返回一个DataFrame。所以你可以这样:

df = pd.read_csv('/test.csv', header=None, sep = ';')
df.columns = ['time','x','y']