我正在从 csv 读取表格,并且只想要列的子集。我用于子集的列表包含我正在阅读的表中可能不存在的字段名称。例如:
# contents of sample.csv:
#a,b,c
#1,2,3
#4,5,6
subset = ['a', 'c', 'd']
Run Code Online (Sandbox Code Playgroud)
我想使用 pandas.read_csv 和子集返回以下内容,但这会引发错误:
pd.read_csv(sample.csv, usecols=subset)
a c
1 3
4 6
ValueError: Usecols do not match columns, columns expected but not found: ['d']
Run Code Online (Sandbox Code Playgroud)
我想我可能可以使用 usecols 的可调用值,但我不确定如何实现。
使用可调用检查列是否in为子集
subset = ['a', 'c', 'd']
df = pd.read_csv('sample.csv', usecols=lambda x: x in subset)
a c
0 1 3
1 4 6
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
542 次 |
| 最近记录: |