pandas读取csv文件会默认假设第一行包含的是列名数据,并将其作为 DataFrame 的列名。因此要么你的csv文件的第一行保存的是列名,假如你的原始csv文件的第一行就是数据行,要注意使用 header=None 参数告诉 pandas 不要将第一行视为列名,而是将其作为数据的一部分。此时,可以根据默认的数字索引去读取对应的列。
import pandas as pd
# 读取 CSV 文件,第一行不是列名
df = pd.read_csv('data.csv', header=None)
# 显示 DataFrame
print(df['索引1'])
print(df)
假如原csv文件内容如下:
索引1 索引2 索引3
0 1 2 3
1 4 5 6
则df[‘索引1’]读取结果为
0 1
1 4
则df读取结果为
0 1 2
0 1 2 3
1 4 5 6
会按照默认的数字索引来读了
如果要在写入csv文件时忽略行索引那么:
指定index=False
train.to_csv(train_csv_file, index=False)
如果要获取数据,需要忽略行索引
data_array = all_csv_data[colunm].values
# 结果为
[ 0.40015721 0.95008842 1.45427351 1.49407907 0.6536186 0.04575852
0.37816252 1.23029068 -1.42001794 -1.25279536]
返回numpy数组,行数为数据量,列数为特征数量,会损失一点数值精确度
data_array = all_csv_data[colunm].tolist()
#结果为
[0.4001572083672233, 0.9500884175255894, 1.454273506962975, 1.494079073157606, 0.6536185954403606, 0.045758517301446, 0.3781625196021735, 1.2302906807277207, -1.4200179371789752, -1.2527953600499262]
返回列表