【发布时间】:2021-01-15 15:04:35
【问题描述】:
假设我有一个由 3 个数据框组成的列表,即
lst = [df1,df2,df3]
地点:
d1 = {'col1':['a','b','c','d','e']}
df1= pd.DataFrame(d1)
d2 = {'col1':['b','c','a','d','e']}
df2= pd.DataFrame(d2)
d3 = {'col1':['b','c','e','d','a']}
df3= pd.DataFrame(d3)
对于lst 中的每个df,我想通过col1 并找到字母a 的等级并从中创建一个新的数据框,输出应如下所示:
dataframe index rank of a
0 0 0
1 1 2
2 2 4
即,对于df1,字母a在第0个索引,对于df2,字母a在第2个索引,依此类推。我想知道这是怎么做到的?
我试过了:
ll = []
for i in lst:
x = i[i['col1'].isin(['a'])]
ll.append(x)
提取a的行列,然后我试了
lll = []
for i in ll:
x = ll[i][0]
lll.append(x)
这不起作用,我认为我的方法通常不是最好的方法。
【问题讨论】: