簡體   English   中英

在 Pandas 中使用 for 循環創建新的 df

[英]Create new df with for loop in Pandas

不知道我這樣做是否正確 - 第一次在這里發帖所以請溫柔:)

見下圖。

從我的 Jupyter Notebook 打印屏幕

我要做的是從 df_Grundinladdning['Datan'] dataframe 創建一個新的 dataframe,其中包含包含字符串“#TRANS”的行。

這是一種方法:

df = pd.DataFrame({"Datan": ["x", "TRANS y", "z", "TRANS u", "v", "TRANS w"]})
print(df)

new_df = df[df.Datan.str.contains("TRANS")]
print(new_df)

結果:

(original dataframe)
     Datan
0        x
1  TRANS y
2        z
3  TRANS u
4        v
5  TRANS w

(new dataframe)
     Datan
1  TRANS y
3  TRANS u
5  TRANS w

這里描述了正確的方法。 循環,即使它沒有語法錯誤,也會非常非常慢。

您無需遍歷 dataframe 即可輕松獲得結果 dataframe :

df_transOnly= df_Grundinladdning[df_Grundinladdning["Datan"].str.contains('#TRANS')]
df_transOnly #for printing df

因此,您將獲得所需的 dataframe,如下所示:

      Datan
5     #TRANS232
12    #TRANS455
20    #TRANS3144
104   #TRANS1234
500   #TRANS213

暫無
暫無

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

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