python - 将列名传递给 Pandas read_csv() 函数

我有一个如下所示的 csv 文件:

,time,o,h,l,c
0,2021-03-17 09:30:00,101.25,103.98,90.17,101.78
1,2021-03-17 09:45:00,102.83,107.49,95.22,101.93
2,2021-03-17 10:00:00,100.92,102.90,97.19,102.80

我正在使用 read_csv 函数读取此数据,如下所示:

cols = ['indx', 'timestamp', 'open', 'high', 'low', 'close']
df = pd.read_csv('prices.csv', names=cols)

生成的数据框如下所示:

    Unnamed: 0  time                o       h       l       c
0   0           2021-03-17 09:30:00 101.25  103.98  90.17   101.78
1   1           2021-03-17 09:45:00 102.83  107.49  95.22   101.93
2   2           2021-03-17 10:00:00 100.92  102.90  97.19   102.80

传递 names 参数似乎对列名称​​没有影响

编辑:

传递 header 参数(根据文档)导致相同的行为:

cols = ['indx', 'timestamp', 'open', 'high', 'low', 'close']
df = pd.read_csv('prices.csv', header=0, names=cols)

是否必须向 read_csv 函数传递另一个参数来自定义列名?

谢谢!

最佳答案

我的猜测是您需要将 header=0 传递给 read_csv:

df = pd.read_csv('prices.csv', names=cols, header=0)

输出:

>>> df
   indx            timestamp    open    high    low   close
0     0  2021-03-17 09:30:00  101.25  103.98  90.17  101.78
1     1  2021-03-17 09:45:00  102.83  107.49  95.22  101.93
2     2  2021-03-17 10:00:00  100.92  102.90  97.19  102.80

https://stackoverflow.com/questions/70857079/

相关文章:

java - Lombok 继承 : how to set default value for fi

sql - Postgres SELECT 查询中的模式匹配

r - 计算矩阵内的元素

react-native - 如何在 React Navigation 中使用图标代替原来的后退按钮

apache-spark - 由于执行者丢失导致洗牌阶段失败

java - 如何对 Map> 进行排序?

npm - sh : hardhat: command not found when install

angular - 如何配置 nginx 以在/和代理/api 上为另一个 api 服务器提供 An

python - 给定四边形的角,使用 matplotlib 在 3d 中绘制阴影四边形

python - PyTorch 中的 DataLoader 和 DataLoader2 有什么不同