熊猫:从CSV文件中获取具体列
问题描述:
我有以下示例.csv
文件:熊猫:从CSV文件中获取具体列
str_header int_header
string_a 1
string_b 2
string_c 3
根据互联网上的解决方案,此代码:
import pandas as pd
data = pd.read_csv("z.csv", names=['int_header'])
print(data['int_header'])
应该只读int_header
列到data
。但如上所述打印时,data
实际上包含所有文件列。我正在使用Python的Anaconda发行版。怎么了?
答
试试这个:
data = pd.read_csv("z.csv", usecols=['int_header'])
假设您的CSV文件,
作为分隔符
说明:
名称:阵列状,默认无
要使用的列名称的列表。如果文件 不包含标题行,那么你应该明确地传递标题=无
usecols:阵列状,默认无
返回列的一个子集。结果>以更快的解析时间和更低的内存使用量。
文档有点混乱。
names
- 用于命名(给列名称),特别是如果你没有标题行或想忽略/跳过它。
usecols
- 用于选择只是“有趣”列
的文档我感到困惑: 名称:阵列状,默认无列名的 列表中使用。如果文件不包含标题行,那么你应该明确地传递标题=无 所以我认为这是一个使用... – student1
“名称”参数是为熊猫使用的内部名称,而不是csv文件中的实际列。 –
@ student1,我已经给我的答案添加了一些解释 – MaxU