【问题标题】:Unable to Add Column Names in DataFrame无法在 DataFrame 中添加列名
【发布时间】:2020-05-04 10:06:08
【问题描述】:

这是我打印时的示例 csv 文件:

  1556890689.332073;16384;340;48188.23529411765;[1618.6294555664062   1619.0826416015625  ...   1620.391845703125.584   1620.1904296874998]
0  1556890689.746113;16384;341;48046.92082111437;...                         1619.082642  ...             1620.442200   1619.6868896484373]
1  1556890690.1393259;16384;340;48188.23529411765...                         1620.643616  ...             1619.888306       1619.384765625]
2  1556890690.536072;16384;340;48188.23529411765;...                         1619.737244  ...             1620.089722    1620.391845703125]

我尝试运行这个:

import pandas as pd

data = pd.read_csv("project_fan.csv", error_bad_lines = False) 
print(data.head())
data.columns['unixTime', 'sampleAmount','Time','samplingRate', 'Data']

并得到这些错误:

Traceback (most recent call last):
  File "new.py", line 6, in <module>
    data.columns['unixTime', 'sampleAmount','Time','samplingRate', 'Data']
  File "/usr/local/lib/python2.7/dist-packages/pandas/core/indexes/base.py", line 3969, in __getitem__
    result = getitem(key)
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices

【问题讨论】:

    标签: python pandas numpy csv data-science


    【解决方案1】:

    read_csv 中的默认分隔符参数是,,因此需要添加参数sep=';',如果csv 中不存在新列名,则添加参数names 与列表长度相同的列数:

    names = ['unixTime', 'sampleAmount','Time','samplingRate', 'Data']
    data = pd.read_csv("project_fan.csv", sep=';', error_bad_lines = False, names=names) 
    

    【讨论】:

      猜你喜欢
      • 2020-12-28
      • 1970-01-01
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      • 2020-12-31
      • 1970-01-01
      • 1970-01-01
      • 2016-09-16
      相关资源
      最近更新 更多