读取csv文件pandas时给出列名

mar*_*ain 31 python pandas

这是我的数据集的示例.

在[54]中:

user1 = pd.read_csv('dataset/1.csv')
In [55]:

user1
Out[55]:
          0     0.69464     3.1735  7.5048
0   0.030639    0.149820    3.48680 9.2755
1   0.069763    -0.299650   1.94770 9.1120
2   0.099823    -1.688900   1.41650 10.1200
3   0.129820    -2.179300   0.95342 10.9240
4   0.159790    -2.301800   0.23155 10.6510
5   0.189820    -1.416500   1.18500 11.0730
Run Code Online (Sandbox Code Playgroud)

如何按下第一列并在第一列上添加名称列[TIME,X,Y和Z].

所需的输出是这样的:

        TIME        X           Y       Z
0        0      0.69464     3.1735  7.5048
1   0.030639    0.149820    3.48680 9.2755
2   0.069763    -0.299650   1.94770 9.1120
3   0.099823    -1.688900   1.41650 10.1200
4   0.129820    -2.179300   0.95342 10.9240
5   0.159790    -2.301800   0.23155 10.6510
5   0.189820    -1.416500   1.18500 11.0730
Run Code Online (Sandbox Code Playgroud)

Wil*_*emM 55

我这样做:

colnames=['TIME', 'X', 'Y', 'Z'] 
user1 = pd.read_csv('dataset/1.csv', names=colnames, header=None)
Run Code Online (Sandbox Code Playgroud)

  • 因为我们提供了列名称,所以需要 `header=None` 吗? (4认同)
  • 如果提供了列名,则不需要参数“header”。根据文档:“如果显式传递列名,则行为与 `header=None` 相同”。请参阅 https://pandas.pydata.org/docs/reference/api/pandas.read_csv.html (3认同)

小智 8

user1  = pd.read_csv('dataset/1.csv',  names=['Time',  'X',  'Y',  'Z']) 
Run Code Online (Sandbox Code Playgroud)

read_csv函数中的names参数用于定义列名称。如果您在此列表中传递额外的名称,它将添加另一个具有该名称且具有 NaN 值的新列。

header=None 用于修剪 CSV 文件中已存在的列名称。


jit*_*555 5

如果我们直接使用csv中的数据,它将以.csv文件的形式提供基于逗号分隔值的合并数据。

user1 = pd.read_csv('dataset/1.csv')
Run Code Online (Sandbox Code Playgroud)

如果要使用pandas添加列名,则必须执行以下操作。但是下面的代码不会为您的列显示单独的标题。

col_names=['TIME', 'X', 'Y', 'Z'] 
user1 = pd.read_csv('dataset/1.csv', names=col_names)
Run Code Online (Sandbox Code Playgroud)

为了解决上述问题,我们必须添加熊猫支持的多余填充,它是header = None

user1 = pd.read_csv('dataset/1.csv', names=col_names, header=None)
Run Code Online (Sandbox Code Playgroud)


小智 5

我们可以用一行代码来完成。

 user1 = pd.read_csv('dataset/1.csv', names=['TIME', 'X', 'Y', 'Z'], header=None)
Run Code Online (Sandbox Code Playgroud)


小智 5

除了上面的答案,如果您的数据集已经有列名并且您想用自定义名称替换它,然后设置header=0而不是header=None