簡體   English   中英

Python熊貓通過遍歷列來構建數據框

[英]Python pandas constructing dataframe by looping over columns

我正在嘗試根據從現有數據框中獲得的數據來開發新的熊貓數據框,然后考慮新數據框中先前計算的值。

例如,這是兩個大小相同的數據幀。

df1 = pd.DataFrame(np.random.randint(0,10, size = (5, 4)), columns=['1', '2', '3', '4'])
df2 = pd.DataFrame(np.zeros(df1.shape), index=df1.index, columns=df1.columns)

然后,我創建了一個列表,該列表作為第二個數據幀df2的開始基礎

L = [2,5,6,7]

df2.loc[0] = L

然后,對於df2的其余行,我想取上一個時間步(df2)的值,然后加上df1的值。

for i in df2.loc[1:]:
   df2.ix[i] = df2.ix[i-1] + df1

例如,我的數據框應如下所示:

>>> df1
   1  2  3  4
0  4  6  0  6
1  7  0  7  9
2  9  1  9  9
3  5  2  3  6
4  0  3  2  9
>>> df2
   1  2  3  4
0  2  5  6  7
1  9  5  13 16
2  18 6  22 25
3  23 8  25 31
4  23 11 27 40

我知道for循環中的索引指示出了點問題,但是我無法弄清楚必須如何構造該參數。 在此方面的任何幫助,我將非常感謝。

這是一個簡單的cumsum

df2 = df1.copy()
df2.loc[0] = [2,5,6,7]
desired_df = df2.cumsum()

暫無
暫無

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

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