簡體   English   中英

根據值填寫 Dataframe 列

[英]Fill Dataframe column based on values

我有一個 dataframe 有幾列,每列都有二進制值。 對於每一列,我都有一個 numpy 數組,其中一些值與列的長度相同。

我需要用 numpy 數組填充該列,但有一個條件:僅當 dataframe 列中的值為 0 時才填充,如果不是從 Z2EA9510C37F7F821E4941FF75FCB2 數組填充。

使用 for 循環我會得到這樣的東西:

 for col in df.columns:
  for i in df[col]:
    if df.loc[i,col] == 0:
      df.at[i,col] = arr[i,col]
    else:
      continue

但是這很慢,而且我的 dataframe 有點大(10k 行 * 180 列),我正在尋找是否有任何優雅的 pythonic 方式來做到這一點

你可以試試

df=df.mask(df==0,arr)

暫無
暫無

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

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