質問編集履歴

6

2016/06/06 22:46

投稿

uraco
uraco

スコア15

test CHANGED
File without changes
test CHANGED
@@ -38,11 +38,11 @@
38
38
 
39
39
  df.pivot_table('url',index='id',columns='item',aggfunc='count')
40
40
 
41
+ ```
42
+
41
43
 
42
44
 
43
45
  「ValueError: negative dimensions are not allowed」
44
-
45
- ```
46
46
 
47
47
 
48
48
 

5

2016/06/06 22:46

投稿

uraco
uraco

スコア15

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,6 @@
1
- 下記のようなレコード数が300万ぐらいのログデータがあります。
1
+ レコード数が300万ぐらいのログデータがあります。
2
+
3
+ 以下の集計したい項目のほかに、urlや時間などの項目もあります。。
2
4
 
3
5
 
4
6
 
@@ -26,13 +28,21 @@
26
28
 
27
29
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
28
30
 
29
- ・1:pivotで集約
31
+ ・1通り目:pivotで集約
30
32
 
31
33
  pivot_tableで集約しようとすると、次のようなエラーが出ます。
32
34
 
33
35
 
34
36
 
37
+ ```python
38
+
39
+ df.pivot_table('url',index='id',columns='item',aggfunc='count')
40
+
41
+
42
+
35
43
  「ValueError: negative dimensions are not allowed」
44
+
45
+ ```
36
46
 
37
47
 
38
48
 
@@ -56,9 +66,9 @@
56
66
 
57
67
  df1 = DataFrame(index=df['id'].unique(),columns=df['item'].unique())
58
68
 
59
- for i in range(len(df1['id'])):
69
+ for i in range(len(df['id'])):
60
70
 
61
- f2.ix[df1.iloc[i,0],df1.iloc[i,1]]=1
71
+ df1.ix[df.iloc[i,0],df.iloc[i,1]]=1
62
72
 
63
73
  ```
64
74
 

4

補足

2016/06/06 22:45

投稿

uraco
uraco

スコア15

test CHANGED
File without changes
test CHANGED
@@ -70,4 +70,4 @@
70
70
 
71
71
 
72
72
 
73
- 別の方法などお知恵をいただければ幸いです。
73
+ 1通り目に関してのpivotでのエラーの回避方法、もしくは別の方法などお知恵をいただければ幸いです。

3

2016/06/06 10:55

投稿

uraco
uraco

スコア15

test CHANGED
File without changes
test CHANGED
@@ -71,11 +71,3 @@
71
71
 
72
72
 
73
73
  別の方法など、お知恵をいただければ幸いです。
74
-
75
-
76
-
77
- ※スタックオーバーフローとのマルチポストです。
78
-
79
- どちらかで解決しましたらフィードバックいたします。
80
-
81
- http://ja.stackoverflow.com/questions/26496/python%E3%81%AEpandas%E3%81%A7%E3%81%AE%E3%83%94%E3%83%9C%E3%83%83%E3%83%88%E9%A2%A8%E3%83%87%E3%83%BC%E3%82%BF%E9%9B%86%E7%B4%84-%E3%82%B5%E3%82%A4%E3%82%BA%E5%A4%A7-%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

2

2016/06/06 09:28

投稿

uraco
uraco

スコア15

test CHANGED
File without changes
test CHANGED
@@ -71,3 +71,11 @@
71
71
 
72
72
 
73
73
  別の方法など、お知恵をいただければ幸いです。
74
+
75
+
76
+
77
+ ※スタックオーバーフローとのマルチポストです。
78
+
79
+ どちらかで解決しましたらフィードバックいたします。
80
+
81
+ http://ja.stackoverflow.com/questions/26496/python%E3%81%AEpandas%E3%81%A7%E3%81%AE%E3%83%94%E3%83%9C%E3%83%83%E3%83%88%E9%A2%A8%E3%83%87%E3%83%BC%E3%82%BF%E9%9B%86%E7%B4%84-%E3%82%B5%E3%82%A4%E3%82%BA%E5%A4%A7-%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

1

code

2016/06/06 08:34

投稿

uraco
uraco

スコア15

test CHANGED
File without changes
test CHANGED
@@ -50,13 +50,17 @@
50
50
 
51
51
 
52
52
 
53
- df=pd.read_csv('logdata.csv')
53
+ ```python
54
54
 
55
- df1 = DataFrame(index=df['id'].unique(),columns=df['item'].unique())
55
+ df=pd.read_csv('logdata.csv')
56
56
 
57
- for i in range(len(df1['id'])):
57
+ df1 = DataFrame(index=df['id'].unique(),columns=df['item'].unique())
58
58
 
59
+ for i in range(len(df1['id'])):
60
+
59
- df2.ix[df1.iloc[i,0],df1.iloc[i,1]]=1
61
+ f2.ix[df1.iloc[i,0],df1.iloc[i,1]]=1
62
+
63
+ ```
60
64
 
61
65
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
62
66