如何在 pandas 中读取没有标题的 csv(附示例)


您可以使用以下基本语法将没有标题的 CSV 文件读取到 pandas DataFrame 中:

 df = pd. read_csv (' my_data.csv ', header= None )

header=None参数告诉 pandas 第一行不应该用作标题行。

以下示例展示了如何在实践中使用此语法。

示例:在 Pandas 中读取没有标题的 CSV 文件

假设我们有以下名为Players_data.csv的 CSV 文件:

pandas读取没有标题的CSV文件

从文件中我们可以看到第一行不包含任何列名。

如果我们使用read_csv()函数导入 CSV 文件,pandas 将尝试使用第一行作为标题行:

 import pandas as pd

#import CSV file
df = pd. read_csv (' players_data.csv ')

#view resulting DataFrame
print (df)

   At 22 10
0 B 14 9
1 C 29 6
2 D 30 2
3 E 22 9
4 F 31 10

但是,我们可以指定header=None以便 pandas 知道不使用第一行作为标题行:

 import pandas as pd

#import CSV file without header
df = pd. read_csv (' players_data.csv ', header = None )

#view resulting DataFrame
print (df)

   0 1 2
0 to 22 10
1 B 14 9
2 C 29 6
3 D 30 2
4 E 22 9
5 F 31 10

请注意,CSV 文件的第一行不再用作标题行。

另请注意,pandas 默认使用一系列数值(0,1,2)作为列名。

要在导入 CSV 文件时指定您自己的列名称,您可以使用名称参数,如下所示:

 import pandas as pd

#specify column names
cols = [' team ', ' points ', ' rebounds ']

#import CSV file without header and specify column names
df = pd. read_csv (' players_data.csv ', header = None , names=cols)

#view resulting DataFrame
print (df)

  team points rebounds
0 to 22 10
1 B 14 9
2 C 29 6
3 D 30 2
4 E 22 9
5 F 31 10

DataFrame 现在具有我们使用名称参数指定的列名称。

注意:您可以在此处找到 pandas read_csv()函数的完整文档。

其他资源

以下教程解释了如何在 Python 中执行其他常见任务:

Pandas:如何在读取 CSV 文件时跳行
Pandas:如何将数据添加到现有 CSV 文件
Pandas:如何将 read_csv 与 usecols 参数一起使用

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注