Python 访问熊猫列表中的DF列
我有一个数据帧列表,我想访问特定数据帧的一列或多列。 数据帧(dfs)列表: 现在,我想访问第二个数据帧中的Python 访问熊猫列表中的DF列,python,list,pandas,dataframe,Python,List,Pandas,Dataframe,我有一个数据帧列表,我想访问特定数据帧的一列或多列。 数据帧(dfs)列表: 现在,我想访问第二个数据帧中的var2列 我试了以下方法 for i, h in enumerate(dfs): for col in i[1]: colum = col['var2'] print(colum) 上面的代码不起作用。如何访问第二个索引数据帧的var2 假设dfs是您的数据帧列表 选项1:直接索引: var2 = dfs[1]['var2'] 选项2:使用df.loc(明确)
var2
列
我试了以下方法
for i, h in enumerate(dfs):
for col in i[1]:
colum = col['var2']
print(colum)
上面的代码不起作用。如何访问第二个索引数据帧的
var2
假设dfs
是您的数据帧列表
选项1:直接索引:
var2 = dfs[1]['var2']
选项2:使用df.loc
(明确):
选项3:使用
df.iloc
(基于索引-隐式):
你的代码怎么了?
enumerate
在每次迭代时返回一个(索引,项)元组。因此,在代码中,i
是索引,h
是元素(数据帧)
i[1]
将抛出TypeError
错误。你需要
for i, h in enumerate(dfs):
if i == 1:
column = h['var2']
break
如果您只需要数据帧,可以删除循环,只需使用dfs[1]
i
是一个自动递增的整数h
是枚举列表中的项。我想i
会给出索引??因此,您希望dfs[1]。loc[:,'var2']
在枚举(['a','b','c'])中为x,y指定x
将取值0、1、2和y
将取值a
,b
,c
@COLDSPEED,dfs[1]。loc[:,'var2']
这给出了所有的数据帧,但我只需要第二个DataFrame@COLDSPEEDcolumn=h['var2']
如何访问第二个DF?@I.n.n.m修改了我的答案。但我不建议你那样做。使用上述三种方法之一。@COLDSPEED yes,这解释了它抛出类型错误的原因。如果我必须循环遍历它并为每个DF
svar2
值绘制它们呢?@I.n.n.m我不太熟悉绘制。但是您可能会在循环中绘制每个图(删除if i==1和break),然后在最后绘制plt.show()。
var2 = dfs[1].loc[:, 'var2']
var2 = dfs[1].iloc[:, 1] # assuming `var2` is the second column
for i, h in enumerate(dfs):
for col in i[1]:
colum = col['var2']
for i, h in enumerate(dfs):
if i == 1:
column = h['var2']
break