2017-07-05 26 views
0

私はPandas DataFrameでPythonで作業しています。これには、下の画像の最初の2つのカラム、user_id、user_timeが含まれています。PANDAS DataFrameにCOUNTIFSカラムを追加

基本的に3番目の列を追加する必要があります。これは、基本的に各「user_id」の「user_time」のシーケンスです。 Excelでは、数式は次のようになります。

=COUNTIFS([user_id],[@[user_id]], [user_time], "<="&[@[user_time]])

は、どのように私は、Pythonであることをしてくださいしますか?

enter image description here

答えて

1

あなたはcumcountを必要としています。コメントを

おかげDingからsort_values必要な利用の場合:

df = df.sort_values(['user_id', 'user_time']) 
df['COUNTIFS'] = df.groupby('user_id').cumcount() + 1 
+1

ニースの1!しかし、 'df = df.sort_values(['user_id'、 'user_time'])を追加すると、Excelの関数をより正確に再現できます。 – Ding

+0

'df = df.sort_values(...)'を実行している場合は、コピーを避けるために 'df.sort_values(...、inplace = True)'を実行することもできます。 –

+0

みんな、あなたは最高です。どうもありがとうございました! – jb007

関連する問題