簡體   English   中英

Python - 如何在 Pandas 中將行組合成單行? (不分組)

[英]Python - How to combine the rows into a single row in Pandas? (not group by)

我正在使用 Pandas 處理一個奇怪的 dataframe:

print(df)

Active        Dead       Hold
Product1      n/a        n/a
n/a           Product2   n/a
n/a           n/a        Product3

我想將三行合並為 1 行,預期的 output 是:

Active        Dead       Hold
Product1      Product2   Product3

我真的不知道該怎么做,感謝您的幫助。 謝謝你。

這是一個稍快的替代方案:

new = df.apply(lambda x: x.dropna().values)

假設從 df 的每一列中刪除NaN會為每列產生相同的行數,您可以遍歷 df 的每一列,刪除NaN並將它們放入新的 DataFrame 中。

df_collapsed = pd.DataFrame()
for col in df.columns:
    df_collapsed[col] = df[col].dropna().values

Output:

df_collapsed

     Active      Dead      Hold
0  Product1  Product2  Product3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM