[英]syntax error in recursive function for pandas?
語言:Python 3 平台:Jupyter Notebook
我想在 dataframe 中計算同一用戶在同一日期和時間發送的消息量。 按照這個例子,我嘗試使用遞歸 function 來做到這一點。
在 Pandas dataframe 中定義遞歸 function
下面是我的嘗試。
interaction = 0
for i, row in df.iterrows():
if ((df2['names'].iloc[i] == (df2['names'].iloc[i-1]) & (df2['time'].iloc[i] == df2['time'].iloc[i-1]) & (df2['date'].iloc[i]== df2['date'].iloc[i-1]))
interaction = interaction
else:
interaction = interaction+1
return interaction
但它返回此錯誤,
File "<ipython-input-171-9670327f0e8e>", line 6
interaction = interaction
^
SyntaxError: invalid syntax
我很抱歉這個問題是如此基本,但我很沮喪。 我嘗試更改變量名稱,但它一直返回相同的錯誤。 當我把它改成return
時,像這樣,
interaction = 0
for i, row in df.iterrows():
if ((df2['names'].iloc[i] == (df2['names'].iloc[i-1]) & (df2['time'].iloc[i] == df2['time'].iloc[i-1]) & (df2['date'].iloc[i]== df2['date'].iloc[i-1]))
return interaction
else:
return (interaction+1)
return interaction
它返回此錯誤。
File "<ipython-input-179-99d835a6b0e6>", line 5
return interaction
^
SyntaxError: invalid syntax
我在條件之后的 if 之后刪除了冒號,因為它也是語法錯誤。 感謝您的幫助。
編輯:如果我包含冒號,這是錯誤
File "<ipython-input-184-041229eea329>", line 5
& (df2['date'].iloc[i]== df2['date'].iloc[i-1])):
^
SyntaxError: invalid syntax
你錯過了:
在 if 語句的末尾
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.