是否可以使用以下示例中的第三列,以及"展开" /解析例如以下内容中的值: Python中的 Pandas DataFrame 而不实际复制行? 所以如果我们有一个像这样的对象:
X Y Count
1 2 3
2 2 2
4 3 1
如果没有,我怎么能在这里给出Count
的含义
将行拆分为Count * row
,因为这似乎不是一个好的解决方案,因为它会使数据在内存中占用更多的空间。
所以我不希望 DataFrame 看起来像这样:
X Y Count
1 2 1
1 2 1
1 2 1
2 2 1
2 2 1
4 3 1
答案 0 :(得分:0)
我认为你的意思是这样的:
new_df = df.loc[df.index.repeat(df['Count'])]
然后行df.loc[n]
重复df.Count[n]
次。它与groupby
相反。
<强>更新强>
我尝试了new_df['Count'] = 1
并提出了SettingWithCopyWarning
,除非我做了明确的副本:
new_df = df.loc[df.index.repeat(df['Count'])].copy()
new_df['Count'] = 1 # <- now it works without a warning