如何从 pandas dataframe 中的字符串读取 csv 文件


您可以使用以下基本语法从 pandas DataFrame 中的字符串读取 CSV 文件:

 import pandas as pd
import io   

df = pd. read_csv ( io.StringIO (some_string), sep=" , ")

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

示例 1:从以逗号作为分隔符的字符串中读取 CSV 文件

以下代码展示了如何将 CSV 文件从字符串(以逗号作为分隔符)读取到 pandas DataFrame 中:

 import pandas as pd
import io   

some_string="""team,points,rebounds
A,22,10
B,14.9
C,29.6
D,30.2
E,22.9
F,31.10"""

#read CSV string into pandas DataFrame
df = pd. read_csv ( io.StringIO (some_string), sep=" , ")

#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

生成的 pandas DataFrame 包含 CSV 字符串中的值。

示例 2:从以分号作为分隔符的字符串中读取 CSV 文件

以下代码展示了如何将 CSV 文件从字符串(以分号作为分隔符)读取到 pandas DataFrame 中:

 import pandas as pd
import io   

some_string="""team;points;rebounds
A;22;10
B;14;9
C;29;6
D;30;2
E;22;9
F;31;10"""

#read CSV string into pandas DataFrame
df = pd. read_csv ( io.StringIO (some_string), sep=" ; ")

#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

生成的 pandas DataFrame 包含 CSV 字符串中的值。

示例 3:从无头字符串读取 CSV 文件

以下代码展示了如何将 CSV 文件从字符串(没有标题行)读取到 pandas DataFrame 中:

 import pandas as pd
import io   

some_string="""A;22;10
B;14;9
C;29;6
D;30;2
E;22;9
F;31;10"""

#read CSV string into pandas DataFrame
df = pd. read_csv (io. StringIO (some_string), sep=" ; ", 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

通过使用header=None参数,我们告诉 pandas 不要使用第一行作为标题行。

默认情况下,pandas 使用一系列数值(0、1、2)作为 DataFrame 的列名称。

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

其他资源

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

Pandas:如何在读取 CSV 文件时跳行
Pandas:如何将数据添加到现有 CSV 文件
Pandas:如何读取没有标题的 CSV 文件
Pandas:导入 CSV 文件时设置列名称

添加评论

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