-2
私は入力として(USERID、Datetime)を持つcsvを持っています 私のユーザの活動を分析するために、インデックスであるPandasシリーズを生成したいと思います。 (複数のシリーズ)。 値は、その日に集計された各ユーザーのアクティビティの合計です(たとえば、日)。Pandasへのアクティビティログイン
ありがとうございます。
私は入力として(USERID、Datetime)を持つcsvを持っています 私のユーザの活動を分析するために、インデックスであるPandasシリーズを生成したいと思います。 (複数のシリーズ)。 値は、その日に集計された各ユーザーのアクティビティの合計です(たとえば、日)。Pandasへのアクティビティログイン
ありがとうございます。
フェイクデータ
n = 100
np.random.seed(1)
userid = np.random.randint(0, 10, n)
datetime = np.random.randint(0, 10, n) + pd.Timestamp('2016-1-1', freq='D')
activity = np.random.randint(0,1000, n)
df = pd.DataFrame({'USERID':userid, 'Datetime':datetime, 'activity':activity})
df.head(10)
Datetime USERID activity
0 2016-01-10 5 788
1 2016-01-01 8 44
2 2016-01-03 9 271
3 2016-01-01 5 670
4 2016-01-08 0 475
5 2016-01-02 0 910
6 2016-01-08 1 499
7 2016-01-10 7 787
8 2016-01-09 6 251
9 2016-01-05 9 666
ソリューション
df.groupby(['Datetime', 'USERID'])['activity'].sum().unstack(fill_value=0)
USERID 0 1 2 3 4 5 6 7 8 9
Datetime
2016-01-01 0 166 1091 1878 583 670 0 1524 577 881
2016-01-02 910 0 0 810 2146 706 182 138 1157 0
2016-01-03 0 0 0 0 433 0 1955 1914 566 561
2016-01-04 51 407 598 0 0 0 440 783 0 0
2016-01-05 0 324 662 0 0 0 0 990 79 2849
2016-01-06 0 959 0 230 878 0 0 656 879 300
2016-01-07 1390 100 0 575 0 0 0 806 87 1243
2016-01-08 975 499 503 0 657 0 403 755 0 1271
2016-01-09 342 0 739 617 0 1297 251 1207 324 458
2016-01-10 963 832 0 0 975 1179 0 787 717 145
モックデータの簡単なサンプルデータフレームと所望の出力を提供してください。 – flyingmeatball
だから、あなたは自分で**コードを書こうとするつもりです**。 ** [もっと研究をして](// meta.stackoverflow.com/questions/261592)**あなたが問題を抱えていると、あなたが試みたものを投稿することができます** t作業**を提供し、** [最小、完全、および検証可能な例](// stackoverflow.com/help/mcve)**を提供します。 – Rob