我有兩個的cols seq_no和VAL跟隨DF:如何在特定索引的熊貓數據框列中重複值?
seq_no val expected_result
0 21 0 0
1 21 0 0
2 21 1 0
3 22 1 1 #seq_no changed
4 22 1 1
5 22 6 1
6 23 6 6 #seq_no changed
7 23 7 6
8 24 7 7 #seq_no changed
9 24 12 7
10 25 12 12 #seq_no changed
11 25 12 12
12 25 13 12
可以看出,在seq_no在2個或更多的行重複,什麼都想是創建一個新的列EXPECTED_RESULT哪裏,每當seq_no改變時,該索引的任何值是根據VAL檢查和值重複EXPECTED_RESULT,直到再次seq_no改變的。
expected_result col說明了我想要的。基本上需要獲得seq_no變化的索引,然後在這些索引處檢查val下的值,然後重複這些值直到seq_no被更改或遇到idx_list中的下一個索引。
我可以找到所需索引的列表,但堅持進一步的操作。
i = df.seq_no.values
df["bool"] = np.append(True, idx[:-1] != idx[1:])
list1 = df[df["bool"] == True].index.tolist()
list1
以下是指數,其中seq_no正在改變列表:
Out [ ] : list1
[0, 3, 6, 8, 10]
請幫助。
@COLDSPEED請看看更新的部分,看看我能做什麼?謝謝您的幫助。 – kshama
@kshama這不是一個好主意。通過對其進行編輯,使問題變得不可讀。我建議你開一個新的問題。 –
@COLDSPEED https://stackoverflow.com/questions/45526511/how-to-create-new-column-by-comparing-values-of-other-columns請檢查 – kshama