问题:熊猫读表不带标题
我如何使用熊猫读取.csv文件(无标题),并且只希望使用列的子集(例如总共20列中的第4和第7列)?我似乎无法做usecols
回答 0
为了读取没有标题的csv,仅对于某些列,您需要传递params header=None
以及usecols=[3,6]
第4列和第7列:
df = pd.read_csv(file_path, header=None, usecols=[3,6])
查看文件
回答 1
先前的答案是正确的,但我认为,额外的names
参数可以使其完美,这是推荐的方式,尤其是在csv没有时headers
。
解
用途usecols
及names
参数
df = pd.read_csv(file_path, usecols=[3,6], names=['colA', 'colB'])
补充阅读
或用于header=None
显式地告诉人们csv
没有标题(无论如何,两行都是相同的)
df = pd.read_csv(file_path, usecols=[3,6], names=['colA', 'colB'], header=None)
这样您就可以通过以下方式检索数据
# with `names` parameter
df['colA']
df['colB']
代替
# without `names` parameter
df[0]
df[1]
说明
基于read_csv,当names
显式传递时,header
将表现为None
而不是0
,因此存在header=None
时可以跳过names
。
回答 2
确保为第4列和第7列指定pass header=None
和add usecols=[3,6]
。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。