从pandas.dataframe中提取特定列

时间:2018-02-06 11:10:09

标签: python pandas spyder

我正在尝试使用python来读取我的csv文件,将特定列提取到pandas.dataframe并显示该数据帧。但是,我没有看到数据框,我收到Series([],dtype:object)作为输出。以下是我正在使用的代码: 我的文件包括:      product sub_product issue sub_issue consumer_complaint_narrative
     company_public_response公司州邮政编码标签
     consumer_consent_provided submitted_via date_sent_to_company
     company_response_to_consumer fulfill_response consumer_disputed?
     complaint_id

我想提取:      sub_product issue sub_issue consumer_complaint_narrative

import pandas as pd

df=pd.read_csv("C:\\....\\consumer_complaints.csv")
df=df.stack(level=0)
df2 = df.filter(regex='[B-F]')
df[df2]

2 个答案:

答案 0 :(得分:9)

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]

此处指定要选择的列号。在数据框中,列从index = 0开始

cols = []

您也可以按名称选择列。只需使用以下行

df = df[["Column Name","Column Name2"]]

答案 1 :(得分:0)

实现这一目标的简单方法如下:

df = pd.read_csv("C:\\....\\consumer_complaints.csv")
df2 = df.loc[:,'B':'F']

希望有所帮助。