我有一個 DataFrame df,里面有50列,有 28800 行。我想添加一個新列col_new,該0 列在2880 to 5760,12960 to 15840和 的每一行中都有值23040 to 25920。所有其他行都將具有 value 1。
我怎么能那樣做?
uj5u.com熱心網友回復:
相信您正在尋找的實際上在這里得到了回答:從串列中的資料框中添加列
myList = [1,2,3,4,5]
print(len(df)) # 50
df['new_col'] = mylist
print(len(df)) # 51
或者,您可以像這樣設定串列切片的值:
data['new_col'] = 1
data.loc[2880:5760, 'new_col'] = 0
data.loc[12960:15840, 'new_col'] = 0
data.loc[23040:25920, 'new_col'] = 0
uj5u.com熱心網友回復:
df = pd.DataFrame([i for i in range(28800)])
df["new_col"] = 1
zeros_bool = [(
(i>=(2880-1) and i<5760) or (i>=(12960-1) and i<15840) or (i>=(23040-1) and i<25920)
) for i in range(28800)]
df.loc[zeros_bool,"new_col"] = 0
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/367969.html
