Python 在索引数据框中选择列
我已经导入了一个带有pd.read_csv的csv文件,使用了parse_日期和index_col。 这将导致数据帧的反跟踪Python 在索引数据框中选择列,python,pandas,Python,Pandas,我已经导入了一个带有pd.read_csv的csv文件,使用了parse_日期和index_col。 这将导致数据帧的反跟踪 DatetimeIndex: 195972 entries, 2018-02-01 to 2019-10-25 Data columns (total 19 columns): account_manager 195972 non-null object article_des 195896 non-null object article_n
DatetimeIndex: 195972 entries, 2018-02-01 to 2019-10-25
Data columns (total 19 columns):
account_manager 195972 non-null object
article_des 195896 non-null object
article_n 195972 non-null object
article_o 195972 non-null object
budget_code 195972 non-null object
budget_naam 195972 non-null object
country 195972 non-null object
currency 195972 non-null object
customer 195972 non-null object
industrie 195972 non-null object
klantnaam 195972 non-null object
month 195972 non-null int64
revenue 195972 non-null float64
revenue_local 195972 non-null float64
sap_code 195972 non-null object
volume 195972 non-null float64
week 195972 non-null int64
weight 195972 non-null float64
year 195972 non-null int64
dtypes: float64(4), int64(3), object(12)
memory usage: 20.9+ MB
None
我已经尝试了所有可能的方法,在新的数据帧中只从这个数据帧中选择一列(权重)。它们都不起作用。什么;在索引数据帧中选择列的技巧是什么?
如果导入csv时没有索引列,我可以进行任何选择。
df['weight']
将返回一个序列,而df['weight']]
将返回一个数据帧
df = pd.DataFrame([[1, 2], [3, 4]], columns=['a', 'b'])
print(df)
# a b
# 0 1 2
# 1 3 4
print(type(df['a']))
# <class 'pandas.core.series.Series'>
print(type(df[['a']]))
# <class 'pandas.core.frame.DataFrame'>
因此,要选择单个列作为数据帧,请传递一个元素列表
print(df[['a']])
# a
# 0 1
# 1 3
使用df[['weight']]不起作用?您可能正在处理空白
df.to_dict()
检查并查看。然后执行df.columns=df.columns.str.strip()
修复。
print(df[['a']])
# a
# 0 1
# 1 3