当我想要df时,以下代码为y返回一个序列。最终,我要从较大的原始df(df)中提取行以创建较小的df(Cand)结果。我已将Cand创建为要填充的新的空df。
Cand = pd.DataFrame(columns=['SR','Hits','Breaks'])
x = df.loc[df['Breaks'] == 0]
y = x.loc[x['Hits'].idxmax()]
Cand.append(y)
x正确地反映为df,但是y变成了一个序列,因此不会填充Cand。
我环顾四周,但找不到类似的问题。预先感谢。
答案 0 :(得分:0)
您的问题不在于您没有将DataFrame传递给append()
,而是这里的.append()
不在适当的位置;假定append()
返回您的初始DataFrame + other ,请尝试将Cand
的返回值重新分配为Cand = Cand.append(y)
到append
(在这种情况下,请按Cand + y )。
您可以使用双方括号从.loc
返回DataFrame。
示例:y = x.loc[[x['Hits'].idxmax()]]