1
我正在嘗試使用'groupby'製表條件的變化,但我很難過,並且會很感激任何指導。我有一個數據幀,如下所示:PANDAS依靠條件
SUBJECT TYPE
1 1
1 2
1 2
2 1
2 1
3 1
3 3
3 5
我想生成以表格形式列出的任何積極的變化的聲明中,忽略任何負變化,併產生每個受試者變化的計數。例如,的輸出上面會:
Subject TYPE
1 1
2 0
3 2
我是否需要創建一個使用熊貓的if/else語句,或者是有一個更簡單的方法來實現這一目標使用峯會?也許像...
def tabchange(type, subject):
current_subject = subject[0]
type_diff = type - type
j = 1
for i in range(1,len(type)):
type_diff[i] = type[i] - type[i-j]
if subject[i] == current_subject:
if type_diff[i] > 0:
new_row = 1
j += 1
else:
j = 1
else:
new_row[i] = 0
current_subject = subject[i]
return new_row
你能請張貼的實際代碼:之後,再由
SUBJECT
分組,結果由TYPE
列計數True
S上的號碼獲得? – wind85@@ AMS您可以通過正面和負面的變化來定義您的意思 – Merlin
當差異發生時,會發生正面變化:row2 - row1> 0;當差異row2 - row1 <0時會導致負面變化 – AMS