project done
Browse files- Data/user_behavior_dataset.csv +701 -0
- README.md +2 -13
- environment/requirement.txt +7 -0
- environment/setup.py +23 -0
- notebook/eda.ipynb +0 -0
- src/App.py +83 -0
- src/__pycache__/test.cpython-312.pyc +0 -0
- src/__pycache__/train.cpython-312.pyc +0 -0
- src/features/__pycache__/build_features.cpython-312.pyc +0 -0
- src/features/build_features.py +79 -0
- src/test.py +116 -0
- src/train.py +81 -0
Data/user_behavior_dataset.csv
ADDED
@@ -0,0 +1,701 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
User ID,Device Model,Operating System,App Usage Time (min/day),Screen On Time (hours/day),Battery Drain (mAh/day),Number of Apps Installed,Data Usage (MB/day),Age,Gender,User Behavior Class
|
2 |
+
1,Google Pixel 5,Android,393,6.4,1872,67,1122,40,Male,4
|
3 |
+
2,OnePlus 9,Android,268,4.7,1331,42,944,47,Female,3
|
4 |
+
3,Xiaomi Mi 11,Android,154,4.0,761,32,322,42,Male,2
|
5 |
+
4,Google Pixel 5,Android,239,4.8,1676,56,871,20,Male,3
|
6 |
+
5,iPhone 12,iOS,187,4.3,1367,58,988,31,Female,3
|
7 |
+
6,Google Pixel 5,Android,99,2.0,940,35,564,31,Male,2
|
8 |
+
7,Samsung Galaxy S21,Android,350,7.3,1802,66,1054,21,Female,4
|
9 |
+
8,OnePlus 9,Android,543,11.4,2956,82,1702,31,Male,5
|
10 |
+
9,Samsung Galaxy S21,Android,340,7.7,2138,75,1053,42,Female,4
|
11 |
+
10,iPhone 12,iOS,424,6.6,1957,75,1301,42,Male,4
|
12 |
+
11,Google Pixel 5,Android,53,1.4,435,17,162,34,Female,1
|
13 |
+
12,OnePlus 9,Android,215,5.5,1690,47,641,24,Male,3
|
14 |
+
13,OnePlus 9,Android,462,6.2,2303,65,1099,57,Female,4
|
15 |
+
14,Xiaomi Mi 11,Android,215,4.9,1662,43,857,43,Male,3
|
16 |
+
15,iPhone 12,iOS,189,5.4,1754,53,779,49,Female,3
|
17 |
+
16,Google Pixel 5,Android,503,10.4,2571,84,2025,39,Female,5
|
18 |
+
17,OnePlus 9,Android,132,3.6,628,32,344,47,Female,2
|
19 |
+
18,iPhone 12,iOS,299,5.8,1431,41,985,44,Female,3
|
20 |
+
19,Google Pixel 5,Android,81,1.4,558,16,297,26,Female,1
|
21 |
+
20,iPhone 12,iOS,577,8.5,2774,89,2192,29,Female,5
|
22 |
+
21,Samsung Galaxy S21,Android,93,2.6,681,37,302,45,Female,2
|
23 |
+
22,OnePlus 9,Android,576,11.6,2803,82,1553,43,Female,5
|
24 |
+
23,Samsung Galaxy S21,Android,423,6.5,2094,65,1372,23,Female,4
|
25 |
+
24,Google Pixel 5,Android,292,5.6,1401,46,949,37,Female,3
|
26 |
+
25,OnePlus 9,Android,216,4.0,1711,59,748,58,Male,3
|
27 |
+
26,Samsung Galaxy S21,Android,91,3.4,1073,38,451,52,Male,2
|
28 |
+
27,iPhone 12,iOS,444,7.6,2372,77,1002,29,Male,4
|
29 |
+
28,Google Pixel 5,Android,512,10.5,2409,89,1599,33,Male,5
|
30 |
+
29,OnePlus 9,Android,452,6.8,2387,77,1456,55,Female,4
|
31 |
+
30,Samsung Galaxy S21,Android,412,6.2,1899,78,1384,19,Female,4
|
32 |
+
31,Xiaomi Mi 11,Android,260,6.0,1361,44,889,37,Female,3
|
33 |
+
32,Xiaomi Mi 11,Android,197,4.6,1660,59,975,25,Male,3
|
34 |
+
33,Google Pixel 5,Android,278,4.7,1484,55,917,21,Male,3
|
35 |
+
34,Google Pixel 5,Android,46,2.0,457,14,105,58,Male,1
|
36 |
+
35,Xiaomi Mi 11,Android,593,10.2,2499,81,1616,38,Female,5
|
37 |
+
36,Samsung Galaxy S21,Android,32,1.2,580,19,153,20,Female,1
|
38 |
+
37,iPhone 12,iOS,122,3.3,755,30,573,26,Male,2
|
39 |
+
38,Samsung Galaxy S21,Android,522,11.2,2808,93,2328,24,Male,5
|
40 |
+
39,OnePlus 9,Android,473,6.4,2312,74,1400,40,Male,4
|
41 |
+
40,Samsung Galaxy S21,Android,398,6.2,1851,77,1180,23,Male,4
|
42 |
+
41,Xiaomi Mi 11,Android,240,4.7,1464,52,708,56,Female,3
|
43 |
+
42,OnePlus 9,Android,576,10.1,2447,83,2323,33,Male,5
|
44 |
+
43,Samsung Galaxy S21,Android,120,2.1,720,39,392,43,Male,2
|
45 |
+
44,Samsung Galaxy S21,Android,152,3.7,993,32,429,18,Male,2
|
46 |
+
45,Xiaomi Mi 11,Android,138,2.4,837,21,572,56,Female,2
|
47 |
+
46,Xiaomi Mi 11,Android,502,10.9,2476,96,1935,39,Male,5
|
48 |
+
47,OnePlus 9,Android,558,8.4,2447,97,1594,22,Female,5
|
49 |
+
48,Samsung Galaxy S21,Android,138,3.6,889,25,323,27,Female,2
|
50 |
+
49,Google Pixel 5,Android,580,8.2,2623,90,2262,49,Male,5
|
51 |
+
50,OnePlus 9,Android,589,8.7,2736,82,1997,49,Male,5
|
52 |
+
51,Xiaomi Mi 11,Android,452,7.4,2180,61,1417,54,Female,4
|
53 |
+
52,Xiaomi Mi 11,Android,245,5.9,1243,52,885,29,Male,3
|
54 |
+
53,Samsung Galaxy S21,Android,125,2.7,690,28,393,27,Female,2
|
55 |
+
54,Xiaomi Mi 11,Android,97,2.2,1101,38,375,53,Male,2
|
56 |
+
55,Google Pixel 5,Android,516,8.7,2857,83,2189,53,Female,5
|
57 |
+
56,iPhone 12,iOS,68,1.6,450,14,111,30,Male,1
|
58 |
+
57,OnePlus 9,Android,64,1.1,572,10,161,42,Female,1
|
59 |
+
58,OnePlus 9,Android,539,8.4,2796,89,2415,26,Male,5
|
60 |
+
59,Xiaomi Mi 11,Android,428,7.0,2306,75,1144,22,Male,4
|
61 |
+
60,iPhone 12,iOS,325,7.1,2269,64,1053,56,Male,4
|
62 |
+
61,Xiaomi Mi 11,Android,522,11.9,2798,85,1663,28,Female,5
|
63 |
+
62,Xiaomi Mi 11,Android,309,7.5,2292,77,1253,57,Female,4
|
64 |
+
63,Xiaomi Mi 11,Android,79,1.9,493,14,128,55,Male,1
|
65 |
+
64,Xiaomi Mi 11,Android,545,11.5,2911,87,1717,21,Female,5
|
66 |
+
65,Samsung Galaxy S21,Android,459,7.0,1982,67,1091,43,Male,4
|
67 |
+
66,iPhone 12,iOS,225,4.0,1420,48,917,56,Male,3
|
68 |
+
67,iPhone 12,iOS,257,4.5,1705,57,912,55,Male,3
|
69 |
+
68,Xiaomi Mi 11,Android,134,4.0,773,35,449,28,Female,2
|
70 |
+
69,iPhone 12,iOS,516,10.2,2932,98,1547,31,Male,5
|
71 |
+
70,Google Pixel 5,Android,82,1.7,558,16,284,29,Female,1
|
72 |
+
71,Samsung Galaxy S21,Android,452,7.2,1808,64,1090,45,Female,4
|
73 |
+
72,iPhone 12,iOS,521,9.0,2902,97,1701,37,Male,5
|
74 |
+
73,Google Pixel 5,Android,457,6.3,2347,66,1082,22,Male,4
|
75 |
+
74,Xiaomi Mi 11,Android,31,1.1,585,11,208,50,Female,1
|
76 |
+
75,iPhone 12,iOS,47,2.0,476,14,125,39,Male,1
|
77 |
+
76,Xiaomi Mi 11,Android,229,5.7,1305,43,985,23,Female,3
|
78 |
+
77,Xiaomi Mi 11,Android,34,2.0,558,14,122,54,Female,1
|
79 |
+
78,Google Pixel 5,Android,173,2.5,678,29,301,30,Female,2
|
80 |
+
79,Samsung Galaxy S21,Android,78,1.8,333,17,138,51,Female,1
|
81 |
+
80,Google Pixel 5,Android,230,5.7,1254,52,989,34,Female,3
|
82 |
+
81,OnePlus 9,Android,565,10.6,2475,99,1603,51,Female,5
|
83 |
+
82,iPhone 12,iOS,172,2.8,1035,22,549,41,Male,2
|
84 |
+
83,Xiaomi Mi 11,Android,330,7.2,2363,77,1133,21,Female,4
|
85 |
+
84,Xiaomi Mi 11,Android,39,1.8,368,11,105,19,Male,1
|
86 |
+
85,Google Pixel 5,Android,223,4.5,1311,56,695,33,Female,3
|
87 |
+
86,Google Pixel 5,Android,404,7.4,2081,63,1352,44,Male,4
|
88 |
+
87,Samsung Galaxy S21,Android,151,2.4,1003,25,392,39,Male,2
|
89 |
+
88,Samsung Galaxy S21,Android,34,1.5,345,11,276,44,Male,1
|
90 |
+
89,Xiaomi Mi 11,Android,137,3.3,839,31,348,34,Female,2
|
91 |
+
90,Samsung Galaxy S21,Android,301,6.2,2053,75,1303,45,Male,4
|
92 |
+
91,Google Pixel 5,Android,116,2.1,912,39,307,40,Female,2
|
93 |
+
92,Google Pixel 5,Android,291,4.1,1474,46,827,32,Female,3
|
94 |
+
93,iPhone 12,iOS,84,1.4,501,16,284,56,Female,1
|
95 |
+
94,iPhone 12,iOS,134,2.5,1125,24,367,35,Male,2
|
96 |
+
95,Samsung Galaxy S21,Android,411,7.5,2169,72,1083,58,Male,4
|
97 |
+
96,Xiaomi Mi 11,Android,326,7.2,2243,73,1454,50,Male,4
|
98 |
+
97,iPhone 12,iOS,550,9.5,2916,91,1946,20,Male,5
|
99 |
+
98,OnePlus 9,Android,516,12.0,2406,82,1968,28,Female,5
|
100 |
+
99,Google Pixel 5,Android,59,1.2,361,18,293,25,Female,1
|
101 |
+
100,OnePlus 9,Android,225,5.5,1526,44,875,50,Female,3
|
102 |
+
101,Google Pixel 5,Android,41,1.1,389,15,136,53,Male,1
|
103 |
+
102,OnePlus 9,Android,183,4.1,1210,45,738,19,Male,3
|
104 |
+
103,Google Pixel 5,Android,174,2.5,929,37,565,32,Female,2
|
105 |
+
104,Xiaomi Mi 11,Android,274,4.2,1781,52,934,28,Male,3
|
106 |
+
105,Xiaomi Mi 11,Android,166,2.8,1113,28,360,25,Male,2
|
107 |
+
106,Xiaomi Mi 11,Android,66,1.2,585,12,264,36,Male,1
|
108 |
+
107,Google Pixel 5,Android,152,2.7,642,38,596,55,Male,2
|
109 |
+
108,Google Pixel 5,Android,54,1.4,403,17,278,23,Female,1
|
110 |
+
109,Xiaomi Mi 11,Android,187,5.5,1754,55,711,50,Female,3
|
111 |
+
110,OnePlus 9,Android,216,6.0,1641,41,889,39,Female,3
|
112 |
+
111,OnePlus 9,Android,95,3.8,718,26,459,41,Female,2
|
113 |
+
112,Xiaomi Mi 11,Android,488,8.6,2447,84,2344,19,Male,5
|
114 |
+
113,Google Pixel 5,Android,295,5.1,1483,45,748,27,Female,3
|
115 |
+
114,Samsung Galaxy S21,Android,136,3.2,818,33,404,42,Male,2
|
116 |
+
115,Xiaomi Mi 11,Android,471,7.9,2156,76,1324,54,Female,4
|
117 |
+
116,iPhone 12,iOS,121,3.2,651,34,596,39,Male,2
|
118 |
+
117,iPhone 12,iOS,75,1.2,409,13,281,18,Male,1
|
119 |
+
118,iPhone 12,iOS,220,5.2,1631,49,909,27,Female,3
|
120 |
+
119,Samsung Galaxy S21,Android,82,1.6,590,13,124,28,Female,1
|
121 |
+
120,Google Pixel 5,Android,97,2.7,1018,37,428,41,Male,2
|
122 |
+
121,Samsung Galaxy S21,Android,388,6.6,2085,71,1150,45,Female,4
|
123 |
+
122,OnePlus 9,Android,529,8.7,2484,89,2189,39,Female,5
|
124 |
+
123,Google Pixel 5,Android,584,10.0,2541,99,2391,49,Female,5
|
125 |
+
124,Google Pixel 5,Android,529,8.1,2686,96,1924,35,Male,5
|
126 |
+
125,Google Pixel 5,Android,227,5.1,1702,57,714,21,Male,3
|
127 |
+
126,Samsung Galaxy S21,Android,535,11.8,2858,99,2378,50,Male,5
|
128 |
+
127,iPhone 12,iOS,332,7.4,2149,68,1321,20,Female,4
|
129 |
+
128,Google Pixel 5,Android,252,4.2,1439,45,667,50,Female,3
|
130 |
+
129,Xiaomi Mi 11,Android,125,2.5,678,34,465,31,Male,2
|
131 |
+
130,Xiaomi Mi 11,Android,97,3.3,751,39,412,36,Female,2
|
132 |
+
131,Google Pixel 5,Android,540,10.8,2923,90,1886,40,Male,5
|
133 |
+
132,Xiaomi Mi 11,Android,320,7.2,2056,69,1226,52,Female,4
|
134 |
+
133,Google Pixel 5,Android,176,3.6,1193,30,458,40,Female,2
|
135 |
+
134,Samsung Galaxy S21,Android,79,1.0,313,18,139,42,Male,1
|
136 |
+
135,Xiaomi Mi 11,Android,83,1.6,303,19,285,51,Male,1
|
137 |
+
136,iPhone 12,iOS,555,11.3,2528,90,1856,55,Female,5
|
138 |
+
137,Samsung Galaxy S21,Android,66,1.7,375,16,216,39,Male,1
|
139 |
+
138,Xiaomi Mi 11,Android,237,4.5,1368,42,868,24,Female,3
|
140 |
+
139,Samsung Galaxy S21,Android,497,9.7,2876,94,2076,18,Male,5
|
141 |
+
140,Google Pixel 5,Android,516,11.1,2429,91,1796,53,Male,5
|
142 |
+
141,Xiaomi Mi 11,Android,219,5.2,1510,42,655,50,Female,3
|
143 |
+
142,Google Pixel 5,Android,448,6.3,2044,71,1337,51,Male,4
|
144 |
+
143,iPhone 12,iOS,156,2.2,896,37,429,57,Female,2
|
145 |
+
144,Samsung Galaxy S21,Android,68,1.1,528,12,201,29,Male,1
|
146 |
+
145,iPhone 12,iOS,524,11.2,2417,90,2069,29,Female,5
|
147 |
+
146,iPhone 12,iOS,188,5.3,1281,45,974,35,Male,3
|
148 |
+
147,Samsung Galaxy S21,Android,443,7.4,2289,73,1026,33,Male,4
|
149 |
+
148,Xiaomi Mi 11,Android,52,1.6,385,19,234,24,Male,1
|
150 |
+
149,OnePlus 9,Android,228,4.2,1677,58,823,56,Male,3
|
151 |
+
150,Google Pixel 5,Android,149,3.7,873,34,459,51,Male,2
|
152 |
+
151,iPhone 12,iOS,523,9.4,2583,92,1539,21,Male,5
|
153 |
+
152,Samsung Galaxy S21,Android,42,1.6,315,19,207,52,Female,1
|
154 |
+
153,Google Pixel 5,Android,120,2.0,741,38,396,56,Female,2
|
155 |
+
154,OnePlus 9,Android,329,7.5,2277,72,1185,27,Female,4
|
156 |
+
155,Xiaomi Mi 11,Android,68,1.5,364,10,102,31,Female,1
|
157 |
+
156,Xiaomi Mi 11,Android,158,3.4,893,36,493,32,Male,2
|
158 |
+
157,Xiaomi Mi 11,Android,86,1.7,439,19,136,54,Male,1
|
159 |
+
158,Xiaomi Mi 11,Android,339,7.8,2102,71,1062,51,Male,4
|
160 |
+
159,Samsung Galaxy S21,Android,304,6.5,2375,79,1493,51,Male,4
|
161 |
+
160,Xiaomi Mi 11,Android,131,2.4,859,26,305,40,Male,2
|
162 |
+
161,Samsung Galaxy S21,Android,64,1.6,540,19,262,35,Female,1
|
163 |
+
162,Xiaomi Mi 11,Android,53,1.9,526,15,112,42,Male,1
|
164 |
+
163,Google Pixel 5,Android,442,7.7,2067,69,1440,45,Male,4
|
165 |
+
164,iPhone 12,iOS,32,2.0,469,18,139,22,Male,1
|
166 |
+
165,Xiaomi Mi 11,Android,278,4.8,1238,48,851,43,Female,3
|
167 |
+
166,Xiaomi Mi 11,Android,540,8.4,2993,98,1540,49,Female,5
|
168 |
+
167,Google Pixel 5,Android,595,11.3,2968,88,2366,30,Male,5
|
169 |
+
168,Google Pixel 5,Android,35,1.5,467,10,158,58,Male,1
|
170 |
+
169,Google Pixel 5,Android,225,5.4,1370,44,791,55,Female,3
|
171 |
+
170,Google Pixel 5,Android,587,11.8,2431,90,1894,47,Male,5
|
172 |
+
171,Xiaomi Mi 11,Android,92,3.7,1124,27,524,44,Male,2
|
173 |
+
172,Google Pixel 5,Android,46,1.1,487,17,208,23,Male,1
|
174 |
+
173,OnePlus 9,Android,153,2.8,935,25,578,37,Female,2
|
175 |
+
174,iPhone 12,iOS,368,6.6,1817,72,1406,27,Female,4
|
176 |
+
175,Xiaomi Mi 11,Android,51,1.6,509,11,113,29,Female,1
|
177 |
+
176,Google Pixel 5,Android,279,5.2,1660,47,629,50,Female,3
|
178 |
+
177,Xiaomi Mi 11,Android,255,5.4,1738,42,826,21,Male,3
|
179 |
+
178,Samsung Galaxy S21,Android,193,5.7,1471,51,972,31,Female,3
|
180 |
+
179,Xiaomi Mi 11,Android,207,5.7,1582,52,692,38,Male,3
|
181 |
+
180,iPhone 12,iOS,539,11.9,2853,83,2007,55,Male,5
|
182 |
+
181,OnePlus 9,Android,151,2.4,1124,38,571,33,Male,2
|
183 |
+
182,Google Pixel 5,Android,474,6.4,2109,68,1079,24,Male,4
|
184 |
+
183,iPhone 12,iOS,544,9.2,2936,83,2416,47,Female,5
|
185 |
+
184,iPhone 12,iOS,73,1.2,308,15,275,39,Female,1
|
186 |
+
185,Xiaomi Mi 11,Android,597,10.4,2984,91,1564,34,Female,5
|
187 |
+
186,Google Pixel 5,Android,498,10.7,2738,94,1995,42,Male,5
|
188 |
+
187,iPhone 12,iOS,402,7.8,2014,79,1088,34,Female,4
|
189 |
+
188,OnePlus 9,Android,75,1.1,379,15,185,37,Male,1
|
190 |
+
189,iPhone 12,iOS,130,2.0,602,21,589,30,Female,2
|
191 |
+
190,Samsung Galaxy S21,Android,42,1.1,402,11,265,32,Female,1
|
192 |
+
191,iPhone 12,iOS,134,2.2,917,23,423,23,Male,2
|
193 |
+
192,Google Pixel 5,Android,79,1.9,477,13,161,24,Male,1
|
194 |
+
193,iPhone 12,iOS,432,7.2,1822,63,1127,59,Female,4
|
195 |
+
194,iPhone 12,iOS,262,4.1,1287,52,997,36,Male,3
|
196 |
+
195,Samsung Galaxy S21,Android,473,6.4,2109,79,1300,23,Female,4
|
197 |
+
196,Google Pixel 5,Android,202,4.7,1512,49,659,45,Female,3
|
198 |
+
197,OnePlus 9,Android,215,4.4,1407,41,991,47,Male,3
|
199 |
+
198,OnePlus 9,Android,151,3.7,1116,32,320,41,Female,2
|
200 |
+
199,OnePlus 9,Android,80,1.6,549,14,197,19,Male,1
|
201 |
+
200,Xiaomi Mi 11,Android,126,2.8,971,32,431,35,Female,2
|
202 |
+
201,Samsung Galaxy S21,Android,495,8.9,2920,84,2252,31,Female,5
|
203 |
+
202,iPhone 12,iOS,127,3.7,1153,35,314,37,Female,2
|
204 |
+
203,Xiaomi Mi 11,Android,88,1.3,327,11,262,22,Male,1
|
205 |
+
204,Google Pixel 5,Android,69,1.6,463,16,146,27,Male,1
|
206 |
+
205,OnePlus 9,Android,100,3.3,961,21,433,25,Male,2
|
207 |
+
206,Xiaomi Mi 11,Android,301,6.5,2084,71,1421,29,Male,4
|
208 |
+
207,Google Pixel 5,Android,78,1.7,455,15,207,37,Female,1
|
209 |
+
208,Google Pixel 5,Android,163,3.1,620,21,419,23,Male,2
|
210 |
+
209,OnePlus 9,Android,539,9.3,2606,92,1990,41,Male,5
|
211 |
+
210,Google Pixel 5,Android,278,4.6,1385,47,823,40,Female,3
|
212 |
+
211,Samsung Galaxy S21,Android,451,6.1,2108,76,1434,25,Female,4
|
213 |
+
212,Samsung Galaxy S21,Android,481,10.9,2752,86,2017,18,Male,5
|
214 |
+
213,Samsung Galaxy S21,Android,133,3.4,714,38,445,25,Male,2
|
215 |
+
214,Xiaomi Mi 11,Android,41,1.1,588,10,246,22,Male,1
|
216 |
+
215,iPhone 12,iOS,152,3.3,1175,29,461,42,Female,2
|
217 |
+
216,OnePlus 9,Android,553,8.4,2559,89,2471,51,Male,5
|
218 |
+
217,iPhone 12,iOS,402,6.9,2282,78,1397,40,Male,4
|
219 |
+
218,OnePlus 9,Android,555,9.5,2855,95,1565,24,Male,5
|
220 |
+
219,iPhone 12,iOS,499,9.6,2873,81,1805,52,Female,5
|
221 |
+
220,Xiaomi Mi 11,Android,101,3.2,603,28,417,43,Male,2
|
222 |
+
221,OnePlus 9,Android,433,6.8,2093,75,1300,32,Male,4
|
223 |
+
222,OnePlus 9,Android,133,2.0,1007,31,417,32,Male,2
|
224 |
+
223,Xiaomi Mi 11,Android,351,6.1,1941,79,1290,21,Female,4
|
225 |
+
224,Samsung Galaxy S21,Android,532,10.7,2556,83,2148,53,Female,5
|
226 |
+
225,OnePlus 9,Android,92,2.5,690,31,563,27,Male,2
|
227 |
+
226,Xiaomi Mi 11,Android,511,10.8,2712,97,2438,59,Female,5
|
228 |
+
227,Xiaomi Mi 11,Android,384,7.0,2185,72,1376,59,Male,4
|
229 |
+
228,iPhone 12,iOS,193,5.2,1318,49,626,32,Female,3
|
230 |
+
229,Samsung Galaxy S21,Android,132,3.8,649,25,368,41,Male,2
|
231 |
+
230,Samsung Galaxy S21,Android,360,7.3,1946,79,1164,50,Male,4
|
232 |
+
231,iPhone 12,iOS,159,2.3,1083,32,526,38,Male,2
|
233 |
+
232,iPhone 12,iOS,495,8.9,2855,91,2150,31,Male,5
|
234 |
+
233,Xiaomi Mi 11,Android,537,10.0,2720,83,1763,35,Male,5
|
235 |
+
234,OnePlus 9,Android,129,3.4,1059,27,580,36,Female,2
|
236 |
+
235,iPhone 12,iOS,132,3.8,636,28,529,53,Male,2
|
237 |
+
236,Xiaomi Mi 11,Android,37,1.4,369,18,295,19,Female,1
|
238 |
+
237,Samsung Galaxy S21,Android,524,8.9,2549,88,1730,20,Female,5
|
239 |
+
238,OnePlus 9,Android,425,6.9,2142,66,1130,19,Female,4
|
240 |
+
239,OnePlus 9,Android,64,1.7,585,13,107,53,Male,1
|
241 |
+
240,iPhone 12,iOS,573,10.8,2711,96,2118,33,Female,5
|
242 |
+
241,Google Pixel 5,Android,45,1.7,302,16,191,57,Female,1
|
243 |
+
242,Xiaomi Mi 11,Android,564,11.7,2764,81,2133,37,Female,5
|
244 |
+
243,OnePlus 9,Android,162,3.5,761,36,338,51,Male,2
|
245 |
+
244,Samsung Galaxy S21,Android,451,6.5,2378,69,1341,44,Male,4
|
246 |
+
245,OnePlus 9,Android,30,1.3,479,16,253,35,Male,1
|
247 |
+
246,Samsung Galaxy S21,Android,202,5.0,1542,45,844,29,Male,3
|
248 |
+
247,Google Pixel 5,Android,71,1.5,590,17,257,33,Male,1
|
249 |
+
248,Google Pixel 5,Android,314,6.2,2205,63,1066,19,Male,4
|
250 |
+
249,Xiaomi Mi 11,Android,168,4.0,866,22,581,50,Female,2
|
251 |
+
250,Google Pixel 5,Android,75,1.9,537,13,230,58,Female,1
|
252 |
+
251,OnePlus 9,Android,42,1.4,324,13,272,29,Female,1
|
253 |
+
252,OnePlus 9,Android,441,7.9,2332,78,1477,23,Female,4
|
254 |
+
253,Google Pixel 5,Android,523,10.5,2460,99,1787,22,Male,5
|
255 |
+
254,Xiaomi Mi 11,Android,100,2.4,982,31,478,48,Female,2
|
256 |
+
255,OnePlus 9,Android,52,1.2,398,14,172,24,Female,1
|
257 |
+
256,OnePlus 9,Android,397,7.0,2352,77,1101,46,Female,4
|
258 |
+
257,Xiaomi Mi 11,Android,424,7.7,1863,65,1116,52,Male,4
|
259 |
+
258,Xiaomi Mi 11,Android,272,5.0,1655,45,686,19,Female,3
|
260 |
+
259,Xiaomi Mi 11,Android,201,4.0,1791,50,914,18,Male,3
|
261 |
+
260,Xiaomi Mi 11,Android,570,9.0,2613,98,2497,49,Female,5
|
262 |
+
261,Xiaomi Mi 11,Android,64,1.3,490,14,151,43,Female,1
|
263 |
+
262,iPhone 12,iOS,334,6.6,2394,68,1227,46,Female,4
|
264 |
+
263,iPhone 12,iOS,518,9.6,2954,93,2125,34,Female,5
|
265 |
+
264,Samsung Galaxy S21,Android,70,1.7,359,10,109,57,Male,1
|
266 |
+
265,iPhone 12,iOS,334,6.8,2000,77,1079,40,Female,4
|
267 |
+
266,Xiaomi Mi 11,Android,563,8.4,2849,85,1508,25,Male,5
|
268 |
+
267,iPhone 12,iOS,181,4.1,1608,43,752,22,Female,3
|
269 |
+
268,OnePlus 9,Android,584,9.4,2766,84,2151,32,Male,5
|
270 |
+
269,Samsung Galaxy S21,Android,208,4.7,1642,45,861,55,Male,3
|
271 |
+
270,Samsung Galaxy S21,Android,381,6.6,2160,69,1450,20,Male,4
|
272 |
+
271,Xiaomi Mi 11,Android,426,6.5,1969,78,1266,53,Female,4
|
273 |
+
272,OnePlus 9,Android,284,4.2,1360,56,888,51,Male,3
|
274 |
+
273,Google Pixel 5,Android,105,2.2,1002,29,453,31,Female,2
|
275 |
+
274,Google Pixel 5,Android,179,2.3,1014,32,588,38,Male,2
|
276 |
+
275,iPhone 12,iOS,122,2.6,639,37,568,35,Male,2
|
277 |
+
276,OnePlus 9,Android,501,11.9,2702,88,1738,49,Male,5
|
278 |
+
277,Xiaomi Mi 11,Android,269,5.9,1666,42,629,32,Female,3
|
279 |
+
278,Google Pixel 5,Android,230,4.4,1607,52,878,54,Male,3
|
280 |
+
279,Xiaomi Mi 11,Android,85,1.6,417,12,122,47,Male,1
|
281 |
+
280,Samsung Galaxy S21,Android,411,7.8,2029,75,1136,33,Female,4
|
282 |
+
281,Samsung Galaxy S21,Android,73,1.7,403,12,163,51,Male,1
|
283 |
+
282,Xiaomi Mi 11,Android,39,1.7,530,11,268,26,Female,1
|
284 |
+
283,iPhone 12,iOS,386,7.7,2114,72,1209,51,Male,4
|
285 |
+
284,Google Pixel 5,Android,49,1.3,542,16,169,54,Female,1
|
286 |
+
285,Google Pixel 5,Android,411,6.9,1820,70,1024,43,Male,4
|
287 |
+
286,OnePlus 9,Android,534,10.8,2805,90,1538,37,Male,5
|
288 |
+
287,Samsung Galaxy S21,Android,314,7.4,2136,64,1376,47,Female,4
|
289 |
+
288,Xiaomi Mi 11,Android,211,4.0,1519,54,811,29,Female,3
|
290 |
+
289,OnePlus 9,Android,121,3.7,619,36,473,47,Male,2
|
291 |
+
290,Google Pixel 5,Android,84,1.2,415,10,146,50,Male,1
|
292 |
+
291,OnePlus 9,Android,448,7.6,2199,66,1047,28,Male,4
|
293 |
+
292,Google Pixel 5,Android,55,1.6,360,19,149,30,Male,1
|
294 |
+
293,Google Pixel 5,Android,59,1.8,497,10,208,36,Female,1
|
295 |
+
294,Xiaomi Mi 11,Android,226,4.5,1781,45,649,27,Female,3
|
296 |
+
295,Samsung Galaxy S21,Android,580,8.5,2660,87,1795,52,Male,5
|
297 |
+
296,OnePlus 9,Android,65,1.8,481,18,130,41,Male,1
|
298 |
+
297,OnePlus 9,Android,458,6.6,2214,67,1163,31,Female,4
|
299 |
+
298,iPhone 12,iOS,170,2.7,805,26,344,53,Female,2
|
300 |
+
299,iPhone 12,iOS,264,5.2,1641,44,778,44,Male,3
|
301 |
+
300,Xiaomi Mi 11,Android,122,3.3,748,35,499,59,Female,2
|
302 |
+
301,Xiaomi Mi 11,Android,420,6.5,2113,65,1314,35,Male,4
|
303 |
+
302,iPhone 12,iOS,267,4.4,1505,59,971,38,Female,3
|
304 |
+
303,iPhone 12,iOS,469,6.0,2290,67,1086,34,Female,4
|
305 |
+
304,iPhone 12,iOS,541,11.4,2443,89,1923,34,Female,5
|
306 |
+
305,iPhone 12,iOS,155,2.9,1117,22,322,19,Female,2
|
307 |
+
306,OnePlus 9,Android,106,2.8,686,32,594,27,Male,2
|
308 |
+
307,OnePlus 9,Android,243,5.0,1232,47,877,43,Male,3
|
309 |
+
308,OnePlus 9,Android,410,7.5,2176,68,1213,45,Female,4
|
310 |
+
309,iPhone 12,iOS,285,5.1,1226,57,666,20,Female,3
|
311 |
+
310,OnePlus 9,Android,397,6.8,2027,66,1167,40,Male,4
|
312 |
+
311,Samsung Galaxy S21,Android,230,4.2,1507,51,868,25,Female,3
|
313 |
+
312,iPhone 12,iOS,341,7.2,2397,68,1055,32,Female,4
|
314 |
+
313,Google Pixel 5,Android,132,2.9,1054,32,563,20,Male,2
|
315 |
+
314,Xiaomi Mi 11,Android,130,3.0,820,21,308,49,Female,2
|
316 |
+
315,iPhone 12,iOS,281,4.9,1566,59,632,29,Male,3
|
317 |
+
316,OnePlus 9,Android,74,2.0,320,11,103,55,Female,1
|
318 |
+
317,OnePlus 9,Android,299,4.3,1737,43,953,42,Female,3
|
319 |
+
318,Google Pixel 5,Android,116,2.2,827,29,434,28,Female,2
|
320 |
+
319,OnePlus 9,Android,408,6.6,2026,63,1076,47,Female,4
|
321 |
+
320,Google Pixel 5,Android,508,11.3,2590,81,2481,51,Male,5
|
322 |
+
321,iPhone 12,iOS,227,4.4,1275,56,984,22,Female,3
|
323 |
+
322,Google Pixel 5,Android,274,6.0,1489,56,666,57,Female,3
|
324 |
+
323,Google Pixel 5,Android,347,6.3,2001,61,1456,21,Female,4
|
325 |
+
324,Xiaomi Mi 11,Android,76,1.3,490,14,156,31,Female,1
|
326 |
+
325,iPhone 12,iOS,445,7.5,2007,78,1115,23,Male,4
|
327 |
+
326,OnePlus 9,Android,203,4.3,1554,54,638,25,Female,3
|
328 |
+
327,Samsung Galaxy S21,Android,199,6.0,1707,57,881,55,Male,3
|
329 |
+
328,OnePlus 9,Android,48,2.0,574,18,127,24,Female,1
|
330 |
+
329,OnePlus 9,Android,88,1.6,420,12,274,31,Female,1
|
331 |
+
330,iPhone 12,iOS,541,8.3,2865,89,1820,42,Female,5
|
332 |
+
331,Google Pixel 5,Android,233,4.6,1534,49,796,21,Female,3
|
333 |
+
332,iPhone 12,iOS,176,3.8,727,36,362,47,Female,2
|
334 |
+
333,OnePlus 9,Android,191,6.0,1762,45,904,54,Male,3
|
335 |
+
334,Google Pixel 5,Android,461,7.5,2001,69,1324,34,Female,4
|
336 |
+
335,Samsung Galaxy S21,Android,37,1.5,375,18,246,46,Female,1
|
337 |
+
336,OnePlus 9,Android,531,9.8,2905,99,1632,45,Female,5
|
338 |
+
337,Samsung Galaxy S21,Android,473,7.9,2292,62,1472,44,Male,4
|
339 |
+
338,Samsung Galaxy S21,Android,30,1.3,561,15,252,34,Male,1
|
340 |
+
339,iPhone 12,iOS,306,6.1,2267,70,1449,46,Male,4
|
341 |
+
340,iPhone 12,iOS,64,1.2,590,13,155,30,Male,1
|
342 |
+
341,iPhone 12,iOS,75,1.0,435,13,223,43,Male,1
|
343 |
+
342,iPhone 12,iOS,597,10.3,2718,90,1863,26,Female,5
|
344 |
+
343,iPhone 12,iOS,529,10.5,2971,87,1683,56,Male,5
|
345 |
+
344,iPhone 12,iOS,290,6.0,1533,54,645,57,Female,3
|
346 |
+
345,iPhone 12,iOS,256,5.8,1309,52,840,43,Male,3
|
347 |
+
346,iPhone 12,iOS,308,7.7,1974,73,1431,37,Female,4
|
348 |
+
347,OnePlus 9,Android,156,3.3,1020,38,447,57,Female,2
|
349 |
+
348,Samsung Galaxy S21,Android,62,1.4,542,18,266,46,Male,1
|
350 |
+
349,Google Pixel 5,Android,156,3.8,866,34,510,26,Male,2
|
351 |
+
350,Samsung Galaxy S21,Android,303,7.4,2314,66,1387,34,Male,4
|
352 |
+
351,Samsung Galaxy S21,Android,463,6.9,2111,73,1463,54,Male,4
|
353 |
+
352,Google Pixel 5,Android,60,1.5,593,14,281,35,Female,1
|
354 |
+
353,Google Pixel 5,Android,225,4.6,1230,52,954,20,Female,3
|
355 |
+
354,Samsung Galaxy S21,Android,379,7.5,1823,68,1075,53,Female,4
|
356 |
+
355,OnePlus 9,Android,53,1.4,455,14,106,54,Female,1
|
357 |
+
356,Samsung Galaxy S21,Android,30,1.9,574,19,287,45,Male,1
|
358 |
+
357,iPhone 12,iOS,291,4.1,1326,51,905,55,Female,3
|
359 |
+
358,iPhone 12,iOS,488,9.5,2840,92,1986,48,Female,5
|
360 |
+
359,Google Pixel 5,Android,74,2.0,366,13,253,44,Female,1
|
361 |
+
360,Samsung Galaxy S21,Android,230,4.6,1325,55,845,54,Female,3
|
362 |
+
361,Samsung Galaxy S21,Android,517,11.8,2435,86,2208,26,Male,5
|
363 |
+
362,OnePlus 9,Android,557,10.4,2900,97,1609,22,Male,5
|
364 |
+
363,Xiaomi Mi 11,Android,78,1.5,341,11,259,38,Female,1
|
365 |
+
364,iPhone 12,iOS,321,7.9,2159,64,1499,45,Male,4
|
366 |
+
365,Xiaomi Mi 11,Android,579,8.6,2539,84,1935,34,Male,5
|
367 |
+
366,OnePlus 9,Android,382,7.2,1965,67,1341,22,Male,4
|
368 |
+
367,Xiaomi Mi 11,Android,516,11.6,2464,82,1767,29,Female,5
|
369 |
+
368,OnePlus 9,Android,598,11.2,2876,85,2477,58,Female,5
|
370 |
+
369,OnePlus 9,Android,102,3.9,747,36,408,49,Female,2
|
371 |
+
370,iPhone 12,iOS,165,2.4,816,35,503,34,Male,2
|
372 |
+
371,iPhone 12,iOS,558,9.8,2765,83,1548,25,Female,5
|
373 |
+
372,Google Pixel 5,Android,561,10.6,2547,86,1823,22,Male,5
|
374 |
+
373,Samsung Galaxy S21,Android,511,10.9,2514,91,2335,59,Female,5
|
375 |
+
374,Google Pixel 5,Android,560,11.3,2947,95,1663,25,Female,5
|
376 |
+
375,OnePlus 9,Android,69,1.3,434,12,164,42,Male,1
|
377 |
+
376,OnePlus 9,Android,44,1.1,531,17,232,26,Male,1
|
378 |
+
377,iPhone 12,iOS,65,1.7,490,17,122,51,Female,1
|
379 |
+
378,Google Pixel 5,Android,458,6.0,1875,63,1072,31,Female,4
|
380 |
+
379,Samsung Galaxy S21,Android,525,10.8,2445,99,1623,57,Male,5
|
381 |
+
380,OnePlus 9,Android,106,3.0,922,22,313,51,Male,2
|
382 |
+
381,iPhone 12,iOS,188,4.6,1767,47,653,34,Male,3
|
383 |
+
382,iPhone 12,iOS,493,10.4,2453,99,1813,39,Male,5
|
384 |
+
383,OnePlus 9,Android,84,1.5,373,19,299,37,Female,1
|
385 |
+
384,OnePlus 9,Android,104,2.9,653,35,322,30,Male,2
|
386 |
+
385,Samsung Galaxy S21,Android,102,3.0,890,38,548,28,Male,2
|
387 |
+
386,iPhone 12,iOS,349,6.6,2041,78,1096,40,Female,4
|
388 |
+
387,OnePlus 9,Android,98,2.0,925,32,457,28,Male,2
|
389 |
+
388,Samsung Galaxy S21,Android,72,1.3,461,13,199,32,Male,1
|
390 |
+
389,Xiaomi Mi 11,Android,563,11.6,2968,92,2191,34,Female,5
|
391 |
+
390,Xiaomi Mi 11,Android,119,2.8,775,31,313,50,Female,2
|
392 |
+
391,OnePlus 9,Android,311,7.9,2231,69,1021,36,Male,4
|
393 |
+
392,OnePlus 9,Android,337,6.1,1901,76,1359,58,Male,4
|
394 |
+
393,Samsung Galaxy S21,Android,168,3.5,1055,29,313,54,Male,2
|
395 |
+
394,iPhone 12,iOS,331,7.4,2129,66,1459,53,Male,4
|
396 |
+
395,Google Pixel 5,Android,589,9.2,2663,84,1774,45,Female,5
|
397 |
+
396,Xiaomi Mi 11,Android,472,6.8,2288,61,1356,52,Male,4
|
398 |
+
397,Xiaomi Mi 11,Android,78,1.1,437,14,143,27,Female,1
|
399 |
+
398,iPhone 12,iOS,517,11.6,2798,90,2175,20,Male,5
|
400 |
+
399,OnePlus 9,Android,41,1.6,323,18,221,43,Female,1
|
401 |
+
400,OnePlus 9,Android,49,1.5,571,10,203,29,Male,1
|
402 |
+
401,Xiaomi Mi 11,Android,522,11.1,2821,86,1891,42,Male,5
|
403 |
+
402,Google Pixel 5,Android,97,2.7,612,36,508,53,Male,2
|
404 |
+
403,iPhone 12,iOS,411,7.4,1960,71,1264,40,Male,4
|
405 |
+
404,Samsung Galaxy S21,Android,566,8.6,2595,89,1657,51,Female,5
|
406 |
+
405,iPhone 12,iOS,559,8.2,2618,84,2102,22,Female,5
|
407 |
+
406,Google Pixel 5,Android,478,7.3,2340,69,1017,43,Female,4
|
408 |
+
407,Xiaomi Mi 11,Android,147,3.2,994,33,567,25,Female,2
|
409 |
+
408,OnePlus 9,Android,395,7.3,2291,61,1049,55,Female,4
|
410 |
+
409,Samsung Galaxy S21,Android,357,7.8,2289,74,1242,22,Female,4
|
411 |
+
410,Google Pixel 5,Android,405,6.9,2366,61,1434,51,Male,4
|
412 |
+
411,Samsung Galaxy S21,Android,501,11.8,2790,86,2074,31,Female,5
|
413 |
+
412,Xiaomi Mi 11,Android,575,8.2,2918,88,1928,50,Male,5
|
414 |
+
413,OnePlus 9,Android,257,5.1,1692,46,769,52,Female,3
|
415 |
+
414,iPhone 12,iOS,270,5.0,1532,51,957,35,Male,3
|
416 |
+
415,Google Pixel 5,Android,116,2.0,1171,22,573,33,Female,2
|
417 |
+
416,iPhone 12,iOS,98,2.3,608,24,394,56,Male,2
|
418 |
+
417,Xiaomi Mi 11,Android,264,5.1,1293,52,737,27,Female,3
|
419 |
+
418,Samsung Galaxy S21,Android,572,11.7,2655,91,2481,57,Female,5
|
420 |
+
419,Xiaomi Mi 11,Android,202,4.9,1549,43,964,27,Female,3
|
421 |
+
420,iPhone 12,iOS,83,1.4,454,11,228,46,Male,1
|
422 |
+
421,iPhone 12,iOS,32,1.4,416,12,198,56,Male,1
|
423 |
+
422,iPhone 12,iOS,168,3.2,716,38,414,43,Male,2
|
424 |
+
423,iPhone 12,iOS,416,6.1,2115,71,1041,22,Female,4
|
425 |
+
424,Xiaomi Mi 11,Android,46,1.1,536,18,167,28,Female,1
|
426 |
+
425,OnePlus 9,Android,201,5.0,1482,59,709,24,Male,3
|
427 |
+
426,Samsung Galaxy S21,Android,130,2.8,1062,24,579,37,Male,2
|
428 |
+
427,OnePlus 9,Android,98,2.4,747,36,403,44,Female,2
|
429 |
+
428,OnePlus 9,Android,105,3.8,967,28,489,51,Male,2
|
430 |
+
429,Xiaomi Mi 11,Android,94,2.3,1033,33,369,58,Male,2
|
431 |
+
430,Xiaomi Mi 11,Android,540,10.1,2757,90,2180,37,Male,5
|
432 |
+
431,iPhone 12,iOS,266,5.5,1238,59,839,22,Male,3
|
433 |
+
432,iPhone 12,iOS,140,3.8,1137,36,506,53,Male,2
|
434 |
+
433,Google Pixel 5,Android,534,10.4,2672,90,1702,51,Male,5
|
435 |
+
434,OnePlus 9,Android,46,2.0,309,15,116,42,Male,1
|
436 |
+
435,iPhone 12,iOS,581,8.4,2591,99,2304,58,Male,5
|
437 |
+
436,Xiaomi Mi 11,Android,105,3.4,798,21,467,34,Female,2
|
438 |
+
437,OnePlus 9,Android,221,4.4,1341,46,862,20,Male,3
|
439 |
+
438,iPhone 12,iOS,41,1.7,408,16,291,34,Male,1
|
440 |
+
439,OnePlus 9,Android,105,3.0,728,24,343,52,Female,2
|
441 |
+
440,Google Pixel 5,Android,123,3.9,915,39,468,18,Male,2
|
442 |
+
441,Google Pixel 5,Android,260,5.7,1725,56,920,36,Female,3
|
443 |
+
442,Samsung Galaxy S21,Android,223,5.7,1295,44,751,39,Male,3
|
444 |
+
443,Google Pixel 5,Android,66,1.1,505,17,218,33,Male,1
|
445 |
+
444,iPhone 12,iOS,231,4.0,1664,48,724,29,Female,3
|
446 |
+
445,iPhone 12,iOS,555,8.8,2540,97,2402,22,Male,5
|
447 |
+
446,Samsung Galaxy S21,Android,378,7.2,1859,61,1318,58,Male,4
|
448 |
+
447,OnePlus 9,Android,546,8.8,2852,81,1641,24,Male,5
|
449 |
+
448,Samsung Galaxy S21,Android,234,5.2,1604,58,919,58,Male,3
|
450 |
+
449,Samsung Galaxy S21,Android,152,3.0,617,22,306,22,Female,2
|
451 |
+
450,Google Pixel 5,Android,34,1.2,518,10,170,20,Female,1
|
452 |
+
451,Samsung Galaxy S21,Android,179,3.5,1114,30,466,56,Male,2
|
453 |
+
452,OnePlus 9,Android,591,11.8,2953,92,1903,52,Male,5
|
454 |
+
453,Samsung Galaxy S21,Android,120,3.3,734,35,583,26,Male,2
|
455 |
+
454,Google Pixel 5,Android,88,1.3,557,13,164,43,Male,1
|
456 |
+
455,iPhone 12,iOS,143,3.9,1160,24,398,45,Male,2
|
457 |
+
456,iPhone 12,iOS,74,1.6,436,13,182,27,Female,1
|
458 |
+
457,iPhone 12,iOS,74,1.6,587,15,275,27,Female,1
|
459 |
+
458,OnePlus 9,Android,234,4.7,1707,55,871,46,Male,3
|
460 |
+
459,iPhone 12,iOS,56,1.0,547,10,142,58,Female,1
|
461 |
+
460,OnePlus 9,Android,174,2.4,639,37,545,50,Male,2
|
462 |
+
461,Samsung Galaxy S21,Android,523,9.0,2696,91,1561,20,Female,5
|
463 |
+
462,Samsung Galaxy S21,Android,123,3.3,938,36,438,55,Male,2
|
464 |
+
463,Samsung Galaxy S21,Android,216,5.9,1789,54,987,55,Male,3
|
465 |
+
464,iPhone 12,iOS,290,4.6,1694,50,809,23,Male,3
|
466 |
+
465,Xiaomi Mi 11,Android,68,1.3,583,10,281,26,Female,1
|
467 |
+
466,OnePlus 9,Android,265,4.8,1770,51,723,55,Female,3
|
468 |
+
467,Samsung Galaxy S21,Android,414,7.3,2349,75,1092,51,Male,4
|
469 |
+
468,Google Pixel 5,Android,238,4.0,1414,47,661,41,Female,3
|
470 |
+
469,Xiaomi Mi 11,Android,429,7.5,1921,61,1102,46,Male,4
|
471 |
+
470,Xiaomi Mi 11,Android,39,1.9,541,16,294,37,Male,1
|
472 |
+
471,Samsung Galaxy S21,Android,248,4.6,1396,52,883,40,Male,3
|
473 |
+
472,Xiaomi Mi 11,Android,541,9.4,2452,93,1811,53,Female,5
|
474 |
+
473,Xiaomi Mi 11,Android,139,3.0,697,37,513,26,Female,2
|
475 |
+
474,iPhone 12,iOS,289,5.0,1625,45,687,29,Male,3
|
476 |
+
475,Xiaomi Mi 11,Android,210,4.9,1657,55,765,49,Female,3
|
477 |
+
476,Samsung Galaxy S21,Android,412,6.2,2201,68,1085,54,Female,4
|
478 |
+
477,Google Pixel 5,Android,318,6.6,2089,77,1126,49,Female,4
|
479 |
+
478,iPhone 12,iOS,258,4.2,1315,44,762,59,Female,3
|
480 |
+
479,OnePlus 9,Android,258,4.3,1759,59,718,41,Female,3
|
481 |
+
480,Samsung Galaxy S21,Android,189,4.8,1681,59,795,57,Male,3
|
482 |
+
481,iPhone 12,iOS,155,2.4,954,39,441,51,Male,2
|
483 |
+
482,Samsung Galaxy S21,Android,528,10.4,2717,87,2140,34,Male,5
|
484 |
+
483,iPhone 12,iOS,549,11.1,2851,87,1814,56,Male,5
|
485 |
+
484,Xiaomi Mi 11,Android,78,1.6,470,18,230,49,Female,1
|
486 |
+
485,iPhone 12,iOS,444,6.0,1873,61,1093,39,Female,4
|
487 |
+
486,Xiaomi Mi 11,Android,80,1.1,417,18,298,36,Male,1
|
488 |
+
487,iPhone 12,iOS,131,3.8,739,34,330,57,Female,2
|
489 |
+
488,iPhone 12,iOS,228,4.4,1734,46,804,57,Female,3
|
490 |
+
489,Xiaomi Mi 11,Android,416,7.3,1882,62,1333,32,Female,4
|
491 |
+
490,Google Pixel 5,Android,586,9.3,2403,94,2332,21,Male,5
|
492 |
+
491,Google Pixel 5,Android,416,6.1,2279,71,1096,47,Male,4
|
493 |
+
492,iPhone 12,iOS,152,3.7,948,22,507,53,Female,2
|
494 |
+
493,Xiaomi Mi 11,Android,87,1.5,594,19,198,36,Female,1
|
495 |
+
494,OnePlus 9,Android,329,6.8,1892,69,1383,23,Male,4
|
496 |
+
495,Samsung Galaxy S21,Android,107,2.5,1176,24,545,29,Female,2
|
497 |
+
496,Google Pixel 5,Android,493,10.9,2928,88,2116,57,Male,5
|
498 |
+
497,iPhone 12,iOS,182,4.8,1500,51,807,43,Female,3
|
499 |
+
498,iPhone 12,iOS,102,2.9,918,37,362,20,Female,2
|
500 |
+
499,Google Pixel 5,Android,274,4.5,1356,54,869,53,Male,3
|
501 |
+
500,iPhone 12,iOS,143,3.6,988,26,504,45,Female,2
|
502 |
+
501,Google Pixel 5,Android,66,1.3,369,14,195,32,Male,1
|
503 |
+
502,Xiaomi Mi 11,Android,420,7.7,2017,74,1187,24,Female,4
|
504 |
+
503,Xiaomi Mi 11,Android,582,8.4,2664,91,2493,55,Female,5
|
505 |
+
504,Google Pixel 5,Android,200,5.8,1291,50,965,52,Male,3
|
506 |
+
505,Google Pixel 5,Android,493,8.5,2859,99,2450,47,Male,5
|
507 |
+
506,Samsung Galaxy S21,Android,348,6.6,2398,66,1415,49,Female,4
|
508 |
+
507,Xiaomi Mi 11,Android,238,5.1,1408,45,941,27,Male,3
|
509 |
+
508,Xiaomi Mi 11,Android,33,2.0,318,11,173,42,Female,1
|
510 |
+
509,Google Pixel 5,Android,267,5.9,1740,45,791,22,Male,3
|
511 |
+
510,iPhone 12,iOS,492,10.0,2513,90,1968,31,Male,5
|
512 |
+
511,Google Pixel 5,Android,241,5.3,1767,58,976,38,Female,3
|
513 |
+
512,Samsung Galaxy S21,Android,567,10.8,2911,89,1682,39,Male,5
|
514 |
+
513,Samsung Galaxy S21,Android,36,1.6,442,17,249,34,Male,1
|
515 |
+
514,OnePlus 9,Android,110,3.4,975,31,507,57,Female,2
|
516 |
+
515,Samsung Galaxy S21,Android,466,7.1,1984,73,1461,54,Male,4
|
517 |
+
516,OnePlus 9,Android,126,2.2,1187,28,599,25,Male,2
|
518 |
+
517,Xiaomi Mi 11,Android,120,3.8,940,36,535,44,Male,2
|
519 |
+
518,iPhone 12,iOS,64,1.2,592,19,218,25,Male,1
|
520 |
+
519,OnePlus 9,Android,574,8.5,2780,87,1809,34,Female,5
|
521 |
+
520,OnePlus 9,Android,119,2.2,1123,22,371,51,Male,2
|
522 |
+
521,OnePlus 9,Android,350,6.5,2364,75,1485,20,Male,4
|
523 |
+
522,Google Pixel 5,Android,69,1.1,535,17,250,25,Male,1
|
524 |
+
523,Xiaomi Mi 11,Android,438,6.5,1849,64,1125,49,Female,4
|
525 |
+
524,Samsung Galaxy S21,Android,506,11.2,2623,98,2460,48,Male,5
|
526 |
+
525,Samsung Galaxy S21,Android,272,5.2,1390,45,792,57,Female,3
|
527 |
+
526,Samsung Galaxy S21,Android,224,4.5,1646,57,665,59,Male,3
|
528 |
+
527,Google Pixel 5,Android,99,2.4,689,36,318,29,Female,2
|
529 |
+
528,iPhone 12,iOS,44,1.2,466,10,131,57,Female,1
|
530 |
+
529,Google Pixel 5,Android,175,3.0,801,32,338,24,Male,2
|
531 |
+
530,Google Pixel 5,Android,228,4.8,1639,47,796,42,Female,3
|
532 |
+
531,Xiaomi Mi 11,Android,589,11.8,2629,86,2479,43,Female,5
|
533 |
+
532,OnePlus 9,Android,339,7.9,1987,66,1191,47,Male,4
|
534 |
+
533,iPhone 12,iOS,431,6.4,2206,66,1200,23,Female,4
|
535 |
+
534,Xiaomi Mi 11,Android,190,4.7,1276,57,915,22,Female,3
|
536 |
+
535,OnePlus 9,Android,389,6.1,2087,67,1383,30,Male,4
|
537 |
+
536,Samsung Galaxy S21,Android,139,3.3,937,24,573,25,Female,2
|
538 |
+
537,Samsung Galaxy S21,Android,289,5.9,1528,48,915,30,Male,3
|
539 |
+
538,Samsung Galaxy S21,Android,593,11.1,2672,82,2258,34,Female,5
|
540 |
+
539,Google Pixel 5,Android,576,9.5,2638,98,2281,38,Female,5
|
541 |
+
540,OnePlus 9,Android,592,9.4,2867,95,1701,27,Female,5
|
542 |
+
541,iPhone 12,iOS,567,10.5,2817,89,2194,52,Male,5
|
543 |
+
542,iPhone 12,iOS,170,2.5,740,21,537,25,Female,2
|
544 |
+
543,Google Pixel 5,Android,242,5.4,1307,48,642,28,Male,3
|
545 |
+
544,Samsung Galaxy S21,Android,275,5.5,1616,48,656,55,Male,3
|
546 |
+
545,Google Pixel 5,Android,544,9.7,2633,97,1727,28,Female,5
|
547 |
+
546,OnePlus 9,Android,50,2.0,362,17,182,34,Female,1
|
548 |
+
547,OnePlus 9,Android,236,4.6,1750,45,971,21,Female,3
|
549 |
+
548,iPhone 12,iOS,139,2.6,658,33,358,58,Female,2
|
550 |
+
549,Google Pixel 5,Android,383,6.6,2155,74,1360,45,Male,4
|
551 |
+
550,Samsung Galaxy S21,Android,172,4.0,1047,32,508,21,Female,2
|
552 |
+
551,Xiaomi Mi 11,Android,455,6.2,1984,72,1287,42,Male,4
|
553 |
+
552,Samsung Galaxy S21,Android,157,2.5,1110,30,373,37,Female,2
|
554 |
+
553,iPhone 12,iOS,173,3.8,605,23,583,32,Male,2
|
555 |
+
554,Samsung Galaxy S21,Android,405,7.3,2082,75,1162,37,Female,4
|
556 |
+
555,iPhone 12,iOS,387,6.6,2168,61,1246,19,Female,4
|
557 |
+
556,Xiaomi Mi 11,Android,201,4.9,1633,41,972,32,Female,3
|
558 |
+
557,iPhone 12,iOS,142,3.5,625,25,370,40,Female,2
|
559 |
+
558,Samsung Galaxy S21,Android,198,4.2,1392,43,640,27,Male,3
|
560 |
+
559,Google Pixel 5,Android,361,7.6,2037,65,1056,55,Male,4
|
561 |
+
560,OnePlus 9,Android,553,11.6,2914,81,1860,47,Male,5
|
562 |
+
561,Samsung Galaxy S21,Android,408,6.2,2245,69,1103,38,Female,4
|
563 |
+
562,Xiaomi Mi 11,Android,121,2.1,1188,21,578,18,Male,2
|
564 |
+
563,Google Pixel 5,Android,71,1.4,508,15,265,33,Female,1
|
565 |
+
564,iPhone 12,iOS,46,1.6,440,10,265,31,Male,1
|
566 |
+
565,Xiaomi Mi 11,Android,290,4.4,1272,55,910,44,Male,3
|
567 |
+
566,Samsung Galaxy S21,Android,60,1.3,462,15,296,40,Male,1
|
568 |
+
567,Google Pixel 5,Android,116,3.9,1132,26,498,35,Female,2
|
569 |
+
568,OnePlus 9,Android,86,1.7,312,16,227,32,Male,1
|
570 |
+
569,Google Pixel 5,Android,291,5.3,1537,43,700,49,Female,3
|
571 |
+
570,Google Pixel 5,Android,404,6.6,2181,77,1327,18,Male,4
|
572 |
+
571,OnePlus 9,Android,441,7.1,1928,74,1421,57,Male,4
|
573 |
+
572,Google Pixel 5,Android,444,6.1,2229,73,1194,25,Female,4
|
574 |
+
573,OnePlus 9,Android,211,5.9,1757,42,864,56,Female,3
|
575 |
+
574,Samsung Galaxy S21,Android,537,9.1,2858,86,2158,22,Male,5
|
576 |
+
575,Xiaomi Mi 11,Android,519,10.9,2571,93,2163,47,Female,5
|
577 |
+
576,Samsung Galaxy S21,Android,94,3.5,606,30,446,49,Male,2
|
578 |
+
577,Google Pixel 5,Android,554,10.3,2776,83,1606,34,Female,5
|
579 |
+
578,iPhone 12,iOS,381,7.5,2216,66,1291,37,Female,4
|
580 |
+
579,OnePlus 9,Android,257,6.0,1715,49,916,40,Female,3
|
581 |
+
580,Samsung Galaxy S21,Android,47,1.1,532,18,122,36,Male,1
|
582 |
+
581,iPhone 12,iOS,527,10.0,2430,82,1737,27,Female,5
|
583 |
+
582,Samsung Galaxy S21,Android,148,2.7,625,34,416,27,Male,2
|
584 |
+
583,iPhone 12,iOS,191,5.7,1414,53,991,19,Female,3
|
585 |
+
584,Google Pixel 5,Android,71,1.9,571,10,117,43,Female,1
|
586 |
+
585,OnePlus 9,Android,73,1.3,538,19,175,30,Female,1
|
587 |
+
586,OnePlus 9,Android,149,3.1,1191,28,563,29,Male,2
|
588 |
+
587,Xiaomi Mi 11,Android,197,4.4,1665,44,608,43,Female,3
|
589 |
+
588,Samsung Galaxy S21,Android,328,6.1,1975,72,1101,24,Male,4
|
590 |
+
589,OnePlus 9,Android,424,7.5,1995,75,1228,36,Male,4
|
591 |
+
590,Samsung Galaxy S21,Android,111,3.6,627,26,464,39,Female,2
|
592 |
+
591,Samsung Galaxy S21,Android,159,3.7,630,33,575,30,Male,2
|
593 |
+
592,Google Pixel 5,Android,580,11.5,2767,84,2341,36,Female,5
|
594 |
+
593,Samsung Galaxy S21,Android,379,7.7,1809,64,1050,22,Female,4
|
595 |
+
594,Samsung Galaxy S21,Android,217,4.2,1500,42,677,26,Female,3
|
596 |
+
595,Xiaomi Mi 11,Android,447,6.3,1959,63,1441,48,Male,4
|
597 |
+
596,OnePlus 9,Android,512,10.5,2538,82,1694,41,Male,5
|
598 |
+
597,Xiaomi Mi 11,Android,511,10.8,2529,91,2387,21,Male,5
|
599 |
+
598,OnePlus 9,Android,140,2.5,825,31,347,59,Male,2
|
600 |
+
599,Samsung Galaxy S21,Android,114,3.0,1131,31,596,28,Male,2
|
601 |
+
600,Samsung Galaxy S21,Android,192,4.3,1382,42,905,47,Female,3
|
602 |
+
601,iPhone 12,iOS,325,6.0,2244,70,1296,30,Female,4
|
603 |
+
602,OnePlus 9,Android,83,1.2,545,15,284,44,Male,1
|
604 |
+
603,OnePlus 9,Android,122,3.0,922,32,373,43,Male,2
|
605 |
+
604,OnePlus 9,Android,138,2.1,660,22,424,41,Female,2
|
606 |
+
605,OnePlus 9,Android,182,5.3,1278,42,885,54,Female,3
|
607 |
+
606,OnePlus 9,Android,425,6.0,1928,72,1150,53,Female,4
|
608 |
+
607,OnePlus 9,Android,580,10.4,2496,81,2441,37,Female,5
|
609 |
+
608,Xiaomi Mi 11,Android,203,4.0,1323,56,787,21,Male,3
|
610 |
+
609,Xiaomi Mi 11,Android,258,4.9,1596,56,937,40,Female,3
|
611 |
+
610,iPhone 12,iOS,551,8.5,2927,92,1901,51,Male,5
|
612 |
+
611,iPhone 12,iOS,507,9.6,2606,95,1543,48,Male,5
|
613 |
+
612,Xiaomi Mi 11,Android,57,1.3,489,16,131,37,Male,1
|
614 |
+
613,Xiaomi Mi 11,Android,553,10.2,2911,82,2441,44,Male,5
|
615 |
+
614,Google Pixel 5,Android,49,1.1,395,16,153,46,Female,1
|
616 |
+
615,Samsung Galaxy S21,Android,106,4.0,1158,23,493,18,Male,2
|
617 |
+
616,Google Pixel 5,Android,119,3.7,608,36,461,52,Male,2
|
618 |
+
617,OnePlus 9,Android,288,5.4,1476,49,767,36,Female,3
|
619 |
+
618,Google Pixel 5,Android,225,5.6,1388,55,965,36,Female,3
|
620 |
+
619,OnePlus 9,Android,342,7.0,1826,71,1077,26,Female,4
|
621 |
+
620,Samsung Galaxy S21,Android,292,4.2,1407,54,867,59,Male,3
|
622 |
+
621,iPhone 12,iOS,218,5.0,1475,46,972,59,Female,3
|
623 |
+
622,Google Pixel 5,Android,64,1.8,351,15,274,56,Male,1
|
624 |
+
623,Xiaomi Mi 11,Android,453,7.4,2363,65,1046,41,Female,4
|
625 |
+
624,OnePlus 9,Android,42,1.8,417,15,284,21,Male,1
|
626 |
+
625,Samsung Galaxy S21,Android,36,1.5,310,15,272,45,Male,1
|
627 |
+
626,OnePlus 9,Android,55,1.8,328,12,196,31,Female,1
|
628 |
+
627,iPhone 12,iOS,210,5.0,1614,53,679,55,Female,3
|
629 |
+
628,iPhone 12,iOS,227,5.2,1446,46,920,59,Male,3
|
630 |
+
629,Xiaomi Mi 11,Android,47,1.2,437,18,234,55,Male,1
|
631 |
+
630,iPhone 12,iOS,461,6.3,1988,62,1004,21,Male,4
|
632 |
+
631,Google Pixel 5,Android,94,3.1,1078,38,489,25,Male,2
|
633 |
+
632,Samsung Galaxy S21,Android,216,5.1,1483,54,977,45,Female,3
|
634 |
+
633,iPhone 12,iOS,496,10.2,2587,84,1921,56,Female,5
|
635 |
+
634,OnePlus 9,Android,138,3.2,1142,31,366,29,Female,2
|
636 |
+
635,iPhone 12,iOS,318,6.6,2055,67,1253,43,Male,4
|
637 |
+
636,Samsung Galaxy S21,Android,96,3.4,1198,39,401,48,Female,2
|
638 |
+
637,OnePlus 9,Android,510,10.7,2433,90,1729,47,Male,5
|
639 |
+
638,Xiaomi Mi 11,Android,83,1.1,546,10,289,32,Female,1
|
640 |
+
639,Google Pixel 5,Android,417,6.2,2074,63,1135,35,Female,4
|
641 |
+
640,Google Pixel 5,Android,538,9.8,2778,91,2080,35,Female,5
|
642 |
+
641,Samsung Galaxy S21,Android,63,1.8,321,11,271,42,Male,1
|
643 |
+
642,OnePlus 9,Android,50,1.4,443,16,255,26,Female,1
|
644 |
+
643,Google Pixel 5,Android,502,8.2,2597,90,1553,27,Male,5
|
645 |
+
644,OnePlus 9,Android,105,3.3,723,35,566,46,Male,2
|
646 |
+
645,Google Pixel 5,Android,186,4.8,1494,53,949,20,Female,3
|
647 |
+
646,Xiaomi Mi 11,Android,174,2.9,1197,23,345,20,Female,2
|
648 |
+
647,Samsung Galaxy S21,Android,89,1.3,314,16,201,58,Female,1
|
649 |
+
648,iPhone 12,iOS,66,1.5,565,17,283,42,Female,1
|
650 |
+
649,iPhone 12,iOS,389,6.3,2294,76,1334,53,Male,4
|
651 |
+
650,Xiaomi Mi 11,Android,186,5.4,1627,58,790,31,Female,3
|
652 |
+
651,Google Pixel 5,Android,149,2.0,1041,39,356,49,Male,2
|
653 |
+
652,iPhone 12,iOS,69,1.7,519,10,167,51,Female,1
|
654 |
+
653,Xiaomi Mi 11,Android,206,5.2,1632,47,694,30,Male,3
|
655 |
+
654,Samsung Galaxy S21,Android,49,1.2,365,19,144,29,Male,1
|
656 |
+
655,Google Pixel 5,Android,594,10.5,2839,91,1647,56,Male,5
|
657 |
+
656,Google Pixel 5,Android,104,3.7,1028,29,493,39,Male,2
|
658 |
+
657,Google Pixel 5,Android,262,5.6,1489,59,628,54,Female,3
|
659 |
+
658,Xiaomi Mi 11,Android,278,5.3,1368,56,894,40,Female,3
|
660 |
+
659,Xiaomi Mi 11,Android,463,6.8,2358,68,1236,43,Female,4
|
661 |
+
660,Xiaomi Mi 11,Android,505,9.6,2464,91,2375,35,Male,5
|
662 |
+
661,Google Pixel 5,Android,50,1.5,387,12,146,59,Male,1
|
663 |
+
662,Xiaomi Mi 11,Android,138,3.1,947,29,545,48,Male,2
|
664 |
+
663,Xiaomi Mi 11,Android,130,3.2,1189,37,448,45,Male,2
|
665 |
+
664,Google Pixel 5,Android,469,6.4,1858,78,1297,55,Female,4
|
666 |
+
665,Xiaomi Mi 11,Android,555,10.3,2568,83,2003,52,Male,5
|
667 |
+
666,iPhone 12,iOS,198,5.4,1544,53,635,53,Male,3
|
668 |
+
667,Samsung Galaxy S21,Android,529,11.4,2891,82,1845,46,Male,5
|
669 |
+
668,Samsung Galaxy S21,Android,205,5.5,1699,49,729,36,Male,3
|
670 |
+
669,iPhone 12,iOS,170,2.4,1039,38,334,23,Male,2
|
671 |
+
670,Samsung Galaxy S21,Android,160,3.2,648,31,339,27,Female,2
|
672 |
+
671,iPhone 12,iOS,81,1.6,387,13,224,48,Male,1
|
673 |
+
672,Google Pixel 5,Android,468,7.3,1937,64,1209,22,Male,4
|
674 |
+
673,Xiaomi Mi 11,Android,500,11.2,2925,84,2438,27,Male,5
|
675 |
+
674,Google Pixel 5,Android,37,1.6,490,18,216,52,Male,1
|
676 |
+
675,Xiaomi Mi 11,Android,522,11.4,2776,93,1768,27,Female,5
|
677 |
+
676,Xiaomi Mi 11,Android,81,1.5,545,17,159,40,Male,1
|
678 |
+
677,OnePlus 9,Android,141,3.8,689,38,576,34,Male,2
|
679 |
+
678,Samsung Galaxy S21,Android,115,3.5,706,26,495,52,Female,2
|
680 |
+
679,Google Pixel 5,Android,298,4.6,1525,59,814,36,Female,3
|
681 |
+
680,iPhone 12,iOS,33,1.8,334,16,113,36,Female,1
|
682 |
+
681,Google Pixel 5,Android,307,6.1,2105,76,1111,25,Female,4
|
683 |
+
682,Xiaomi Mi 11,Android,380,7.6,2354,77,1191,30,Male,4
|
684 |
+
683,Xiaomi Mi 11,Android,190,5.5,1718,58,815,42,Male,3
|
685 |
+
684,Samsung Galaxy S21,Android,75,1.6,325,12,225,45,Male,1
|
686 |
+
685,Google Pixel 5,Android,218,4.0,1221,47,822,25,Male,3
|
687 |
+
686,Xiaomi Mi 11,Android,412,6.6,1859,67,1393,18,Male,4
|
688 |
+
687,Google Pixel 5,Android,335,7.7,2037,68,1007,18,Male,4
|
689 |
+
688,OnePlus 9,Android,387,6.3,2098,61,1178,54,Male,4
|
690 |
+
689,Google Pixel 5,Android,261,4.9,1589,56,824,52,Female,3
|
691 |
+
690,Samsung Galaxy S21,Android,541,9.5,2424,98,1550,32,Male,5
|
692 |
+
691,Google Pixel 5,Android,195,5.7,1447,48,679,30,Male,3
|
693 |
+
692,iPhone 12,iOS,178,4.0,856,37,569,51,Female,2
|
694 |
+
693,Xiaomi Mi 11,Android,378,6.7,1898,78,1455,48,Female,4
|
695 |
+
694,Xiaomi Mi 11,Android,505,8.6,2792,82,1709,31,Male,5
|
696 |
+
695,Samsung Galaxy S21,Android,564,9.7,2422,83,1985,34,Female,5
|
697 |
+
696,iPhone 12,iOS,92,3.9,1082,26,381,22,Male,2
|
698 |
+
697,Xiaomi Mi 11,Android,316,6.8,1965,68,1201,59,Male,4
|
699 |
+
698,Google Pixel 5,Android,99,3.1,942,22,457,50,Female,2
|
700 |
+
699,Samsung Galaxy S21,Android,62,1.7,431,13,224,44,Male,1
|
701 |
+
700,OnePlus 9,Android,212,5.4,1306,49,828,23,Female,3
|
README.md
CHANGED
@@ -1,13 +1,2 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
emoji: 🐨
|
4 |
-
colorFrom: indigo
|
5 |
-
colorTo: red
|
6 |
-
sdk: streamlit
|
7 |
-
sdk_version: 1.39.0
|
8 |
-
app_file: app.py
|
9 |
-
pinned: false
|
10 |
-
short_description: 'User behaviour classification on user behaviour dataset '
|
11 |
-
---
|
12 |
-
|
13 |
-
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
|
|
1 |
+
# Project-1
|
2 |
+
Classify user behavior based on mobile data
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
environment/requirement.txt
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
Required Library List
|
2 |
+
pandas
|
3 |
+
numpy
|
4 |
+
matplotlib
|
5 |
+
seaborn
|
6 |
+
sklearn
|
7 |
+
scipy
|
environment/setup.py
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
'''
|
2 |
+
author name : Rupesh Garsondiya
|
3 |
+
github : @Rupeshgarsondiya
|
4 |
+
Organization : L.J University
|
5 |
+
'''
|
6 |
+
from setuptools import setup, find_packages
|
7 |
+
|
8 |
+
setup(
|
9 |
+
name='project-1', # project name
|
10 |
+
version='1.0', # version number
|
11 |
+
description='Classify user behavior based on mobile data', # description of the project
|
12 |
+
packages = find_packages(), # find all packages
|
13 |
+
author='Rupesh-Garsondiya' ,# author of the package
|
14 |
+
author_email='[email protected]', # email of the author
|
15 |
+
url='https://github.com/Rupeshgarsondiya/Project-1.git', # url of the project
|
16 |
+
install_requires=['pandas', 'numpy', 'sklearn', 'matplotlib'],
|
17 |
+
# list of the dependencies required by the package
|
18 |
+
classifiers=['Programining Language :: python :: 3.12.3']
|
19 |
+
)
|
20 |
+
|
21 |
+
|
22 |
+
|
23 |
+
|
notebook/eda.ipynb
ADDED
The diff for this file is too large to render.
See raw diff
|
|
src/App.py
ADDED
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
'''
|
2 |
+
Author : Rupesh Garsondiya
|
3 |
+
github : @Rupeshgarsondiya
|
4 |
+
Organization : L.J University
|
5 |
+
'''
|
6 |
+
|
7 |
+
|
8 |
+
|
9 |
+
|
10 |
+
|
11 |
+
import http
|
12 |
+
import streamlit as st
|
13 |
+
from PIL import Image
|
14 |
+
from train import *
|
15 |
+
from test import *
|
16 |
+
|
17 |
+
|
18 |
+
# Centering the title using HTML and CSS
|
19 |
+
|
20 |
+
|
21 |
+
class Main:
|
22 |
+
def __init__(self) -> None:
|
23 |
+
pass
|
24 |
+
|
25 |
+
def run(self):
|
26 |
+
|
27 |
+
# Display the image from a URL
|
28 |
+
st.markdown(
|
29 |
+
"""
|
30 |
+
<style>
|
31 |
+
.img-rounded {
|
32 |
+
border-radius: 15px;
|
33 |
+
width: 400px; /* Adjust the width as needed */
|
34 |
+
}
|
35 |
+
|
36 |
+
</style>
|
37 |
+
<div style="text-align: center;">
|
38 |
+
<img src="https://files.oaiusercontent.com/file-j5d0noa13fNCzctwMzacm7k9?se=2024-10-15T17%3A31%3A03Z&sp=r&sv=2024-08-04&sr=b&rscc=max-age%3D604800%2C%20immutable%2C%20private&rscd=attachment%3B%20filename%3D393b3cd9-2488-4f60-a1d7-52fe26428c8f.webp&sig=JSGn0KwxflHJ9MPWGzjpDn%2BzUTJxnMrSN2%2BrrTMhoLg%3D" class="img-rounded",><br>
|
39 |
+
|
40 |
+
""",
|
41 |
+
unsafe_allow_html=True
|
42 |
+
)
|
43 |
+
st.write()
|
44 |
+
st.write()
|
45 |
+
|
46 |
+
|
47 |
+
t = test()
|
48 |
+
t.predict_data()
|
49 |
+
|
50 |
+
|
51 |
+
st.markdown("[GitHub](https://github.com/Rupeshgarsondiya/Project-1) | <a href='https://www.linkedin.com/in/rupesh-garsondiya-919817275/' target='_blank'>Linkedin</a>",unsafe_allow_html=True)
|
52 |
+
|
53 |
+
|
54 |
+
# Add a LinkedIn profile hyperlink using HTML
|
55 |
+
st.markdown("", unsafe_allow_html=True)
|
56 |
+
|
57 |
+
|
58 |
+
|
59 |
+
|
60 |
+
# Add copyright notice at the bottom
|
61 |
+
st.markdown("<hr>", unsafe_allow_html=True) # Horizontal line to separate content
|
62 |
+
st.markdown(
|
63 |
+
"<b><p style='text-align: center; font-size: 12px;'>© 2024 Rupesh Garsondiya. All Rights Reserved.</p>",
|
64 |
+
unsafe_allow_html=True
|
65 |
+
)
|
66 |
+
|
67 |
+
|
68 |
+
if __name__ == "__main__":
|
69 |
+
|
70 |
+
|
71 |
+
|
72 |
+
st.markdown("<h1 style='text-align: center;'><b>User behaviour classification on user Behaviour Dataset</b></h1>", unsafe_allow_html=True)
|
73 |
+
|
74 |
+
st.markdown("<p ><b> - About this project :</b></p>",unsafe_allow_html=True)
|
75 |
+
st.write(' - This project is a simple web application that uses a machine learning model to classify user behavior into different categories.')
|
76 |
+
|
77 |
+
st.write(' - The model is trained on a dataset of user behavior and can be used to predict the behavior of a new user based on their mobile data.')
|
78 |
+
|
79 |
+
run_obj = Main()
|
80 |
+
run_obj.run()
|
81 |
+
|
82 |
+
else :
|
83 |
+
print("This is a Streamlit app. Please run it using `streamlit run app.py `") # noqa: E501
|
src/__pycache__/test.cpython-312.pyc
ADDED
Binary file (4.24 kB). View file
|
|
src/__pycache__/train.cpython-312.pyc
ADDED
Binary file (3.48 kB). View file
|
|
src/features/__pycache__/build_features.cpython-312.pyc
ADDED
Binary file (3.09 kB). View file
|
|
src/features/build_features.py
ADDED
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
'''
|
2 |
+
Author : Rupesh Garsondiya
|
3 |
+
github : @Rupeshgarsondiya
|
4 |
+
Organization : L.J university
|
5 |
+
|
6 |
+
'''
|
7 |
+
|
8 |
+
# Feature Engineering
|
9 |
+
|
10 |
+
# import library
|
11 |
+
|
12 |
+
import pandas as pd
|
13 |
+
import numpy as np
|
14 |
+
import streamlit as st
|
15 |
+
from sklearn.preprocessing import OneHotEncoder,StandardScaler
|
16 |
+
from sklearn.model_selection import train_test_split
|
17 |
+
from sklearn.pipeline import Pipeline,make_pipeline
|
18 |
+
from sklearn.compose import ColumnTransformer
|
19 |
+
|
20 |
+
|
21 |
+
'''create class FeatureEngineering is created to perform feature engineering on the dataset'''
|
22 |
+
class FeatureEngineering:
|
23 |
+
|
24 |
+
def __init__(self): # define constructor
|
25 |
+
pass
|
26 |
+
|
27 |
+
def cleandata(self):
|
28 |
+
data = pd.read_csv('/home/rupeshgarsondiya/workstation/lab/Project-1/Data/user_behavior_dataset.csv') # load Dataset
|
29 |
+
|
30 |
+
data.drop('User ID',axis=1,inplace=True) # Drop user id column it not required
|
31 |
+
|
32 |
+
'''Rename column name'''
|
33 |
+
data.rename(columns={'Device Model':'P_Model','Operating System':'OS','App Usage Time (min/day)':'App_Time(hours/day)',
|
34 |
+
'Screen On Time (hours/day)':'(hours/Screen_timeday)','Battery Drain (mAh/day)':'Battery_Drain(mAh/day)',
|
35 |
+
'Number of Apps Installed':'Installed_app','Data Usage (MB/day)':'Data_Usage(GB/day)'},inplace=True)
|
36 |
+
|
37 |
+
# App time convert minit into the hours
|
38 |
+
data['App_Time(hours/day)']=data['App_Time(hours/day)']/60
|
39 |
+
|
40 |
+
# convert data use MB into GB
|
41 |
+
data['Data_Usage(GB/day)']=data['Data_Usage(GB/day)']/1024
|
42 |
+
|
43 |
+
return data
|
44 |
+
|
45 |
+
def get_clean_data(self):
|
46 |
+
df = FeatureEngineering().cleandata()
|
47 |
+
print(df.head())
|
48 |
+
|
49 |
+
X = df.drop('User Behavior Class', axis=1)
|
50 |
+
y = df['User Behavior Class']
|
51 |
+
|
52 |
+
x_train,x_test,y_train,y_test = train_test_split(X,y,test_size=0.2)
|
53 |
+
|
54 |
+
categorical_col = ['P_Model','OS','Gender']
|
55 |
+
categorical_transform = OneHotEncoder()
|
56 |
+
|
57 |
+
numerical_col = ['Battery_Drain(mAh/day)']
|
58 |
+
numerical_transform = StandardScaler()
|
59 |
+
|
60 |
+
# use to column transformer to perform onehotencoing and standard scaling
|
61 |
+
preprocessor = ColumnTransformer(
|
62 |
+
transformers=[
|
63 |
+
|
64 |
+
('cat', categorical_transform, categorical_col)
|
65 |
+
],remainder='passthrough')
|
66 |
+
|
67 |
+
# create sklearn pipeline
|
68 |
+
pipeline = Pipeline(steps=[('preprocessor', preprocessor)])
|
69 |
+
pipeline.fit(x_train)
|
70 |
+
pipeline.fit(x_test)
|
71 |
+
x_train_t = pipeline.transform(x_train)
|
72 |
+
x_test_t = pipeline.transform(x_test)
|
73 |
+
|
74 |
+
|
75 |
+
return x_train_t,x_test_t,y_train,y_test,pipeline
|
76 |
+
|
77 |
+
|
78 |
+
|
79 |
+
|
src/test.py
ADDED
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
''''
|
2 |
+
Author : Rupesh Garsondiya
|
3 |
+
github : @Rupeshgarsondiya
|
4 |
+
Organization : L.J University
|
5 |
+
|
6 |
+
'''
|
7 |
+
|
8 |
+
import time
|
9 |
+
import streamlit as st
|
10 |
+
import pandas as pd
|
11 |
+
import numpy as np
|
12 |
+
from sklearn.preprocessing import StandardScaler
|
13 |
+
from train import *
|
14 |
+
|
15 |
+
|
16 |
+
class test :
|
17 |
+
|
18 |
+
def __init__(self):
|
19 |
+
pass
|
20 |
+
|
21 |
+
def predict_data(self):
|
22 |
+
|
23 |
+
st.sidebar.title("Select Parameter ")
|
24 |
+
mt = Model_Train()
|
25 |
+
S_algo,Pipeline = mt.train_model()
|
26 |
+
df = None
|
27 |
+
options = ["Google Pixel 5", "OnePlus 9", "Samsung Galaxy S21", "Xiaomi Mi 11",'iPhone 12']
|
28 |
+
|
29 |
+
selected_option = st.sidebar.selectbox("Select phone model :", options)
|
30 |
+
|
31 |
+
if selected_option in options:
|
32 |
+
encoded_model = [1 if i == selected_option else 0 for i in options]
|
33 |
+
df = pd.DataFrame([encoded_model], columns=options)
|
34 |
+
|
35 |
+
|
36 |
+
|
37 |
+
options1 = ["Android",'IOS']
|
38 |
+
|
39 |
+
|
40 |
+
|
41 |
+
|
42 |
+
if selected_option =='iPhone 12':
|
43 |
+
selected_option1 = st.sidebar.selectbox("Select OS :", 'IOS')
|
44 |
+
encoded_os = [0,1]
|
45 |
+
else :
|
46 |
+
encoded_os = [1,0]
|
47 |
+
selected_option1 = st.sidebar.selectbox("Select OS :", 'Android')
|
48 |
+
df[options1] = encoded_os
|
49 |
+
|
50 |
+
|
51 |
+
options2 = ['Female','Male']
|
52 |
+
selected_option2 = st.sidebar.radio("Select Gender :", options2)
|
53 |
+
encoded_gender = [1 if i == selected_option2 else 0 for i in options2]
|
54 |
+
df[options2] = encoded_gender
|
55 |
+
|
56 |
+
|
57 |
+
app_time = st.sidebar.number_input('Enter app time : ',min_value=0.0,max_value=24.0,value=0.0)
|
58 |
+
df['App_Time(hours/day)'] = app_time
|
59 |
+
|
60 |
+
|
61 |
+
screen_time = st.sidebar.number_input('Enter your screen time : ',min_value=0.0,max_value=24.0,value=0.0)
|
62 |
+
df['screen_Time(hours/day)'] = screen_time
|
63 |
+
|
64 |
+
|
65 |
+
battary = st.sidebar.number_input('Enter battary drain(mAh) : ',min_value=100.0,max_value=6000.0,value=100.0)
|
66 |
+
df['Battery_Drain(mAh)'] = battary
|
67 |
+
|
68 |
+
|
69 |
+
no_app = st.sidebar.number_input('Enter number of apps installed : ',min_value=5.0,max_value=50.0,value=5.0)
|
70 |
+
df['Installed_app'] = no_app
|
71 |
+
|
72 |
+
|
73 |
+
data_use = st.sidebar.number_input('Enter data usage (GB) : ',min_value=0.0,max_value=10.0,value=0.0)
|
74 |
+
df['Data_Usage(GB)'] = data_use
|
75 |
+
|
76 |
+
|
77 |
+
age = st.sidebar.number_input('Enter your age : ',min_value=15.0,max_value=100.0,value=15.0)
|
78 |
+
df['Age'] = age
|
79 |
+
|
80 |
+
if st.button("Submit"):
|
81 |
+
st.write("Processing...")
|
82 |
+
time.sleep(2)
|
83 |
+
prediction = S_algo.predict(df)
|
84 |
+
if prediction==1:
|
85 |
+
|
86 |
+
st.write('Output : Occasional Users')
|
87 |
+
elif prediction==2:
|
88 |
+
st.write('Output : Casual Users ')
|
89 |
+
elif prediction==3:
|
90 |
+
st.write('Output : content consumer : ')
|
91 |
+
elif prediction==4:
|
92 |
+
st.write('Output : Social Media Enthusiasts')
|
93 |
+
else :
|
94 |
+
st.write('Output : Power Users')
|
95 |
+
|
96 |
+
|
97 |
+
|
98 |
+
|
99 |
+
|
100 |
+
|
101 |
+
|
102 |
+
|
103 |
+
|
104 |
+
|
105 |
+
|
106 |
+
|
107 |
+
|
108 |
+
|
109 |
+
|
110 |
+
|
111 |
+
|
112 |
+
|
113 |
+
|
114 |
+
|
115 |
+
|
116 |
+
|
src/train.py
ADDED
@@ -0,0 +1,81 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
'''
|
2 |
+
author : Rupesh Garsondiya
|
3 |
+
github : @Rupeshgarsondiya
|
4 |
+
Organization : L.J University
|
5 |
+
'''
|
6 |
+
|
7 |
+
|
8 |
+
|
9 |
+
|
10 |
+
|
11 |
+
import pandas as pd
|
12 |
+
import streamlit as st
|
13 |
+
import numpy as np
|
14 |
+
from features.build_features import *
|
15 |
+
from sklearn.model_selection import train_test_split
|
16 |
+
from sklearn.linear_model import LogisticRegression
|
17 |
+
from sklearn.ensemble import RandomForestClassifier
|
18 |
+
from sklearn.tree import DecisionTreeClassifier
|
19 |
+
from sklearn.neighbors import KNeighborsClassifier
|
20 |
+
from sklearn.svm import SVC
|
21 |
+
from sklearn.metrics import accuracy_score
|
22 |
+
|
23 |
+
|
24 |
+
|
25 |
+
class Model_Train:
|
26 |
+
def __init__(self) -> None:
|
27 |
+
pass
|
28 |
+
|
29 |
+
'''load_data() fuction use for to get the clean data or feature transformed data '''
|
30 |
+
def load_data(self):
|
31 |
+
pass
|
32 |
+
|
33 |
+
|
34 |
+
def train_model(self):
|
35 |
+
st.markdown(
|
36 |
+
"""
|
37 |
+
<style>
|
38 |
+
body {
|
39 |
+
background-color: lightblue;
|
40 |
+
}
|
41 |
+
</style>
|
42 |
+
""",
|
43 |
+
unsafe_allow_html=True
|
44 |
+
)
|
45 |
+
fe = FeatureEngineering()
|
46 |
+
x_train,x_test,y_train,y_test,pipeline = fe.get_clean_data()
|
47 |
+
|
48 |
+
|
49 |
+
# Define the options for the dropdown menu
|
50 |
+
options = ['Logistic Regreesion', 'Random Forest Classifier', 'Decision Tree', 'SVM','KNeighborsClassifier']
|
51 |
+
# Create the dropdown menu
|
52 |
+
with st.container():
|
53 |
+
st.markdown('<div class="dropdown-left">', unsafe_allow_html=True)
|
54 |
+
selected_option = st.sidebar.selectbox('Select Algoritham :', options)
|
55 |
+
st.markdown('</div>', unsafe_allow_html=True)
|
56 |
+
|
57 |
+
S_algo = object
|
58 |
+
if selected_option== 'Logistic Regreesion':
|
59 |
+
S_algo = LogisticRegression()
|
60 |
+
S_algo.fit(x_train,y_train)
|
61 |
+
ypred = S_algo.predict(x_test)
|
62 |
+
elif selected_option=='Random Forest Classifier':
|
63 |
+
S_algo = RandomForestClassifier(n_estimators=200,n_jobs=-1,verbose=True,max_depth=2)
|
64 |
+
S_algo.fit(x_train,y_train)
|
65 |
+
ypred1 = S_algo.predict(x_test)
|
66 |
+
elif selected_option=='Decision Tree':
|
67 |
+
S_algo = DecisionTreeClassifier(max_depth=4,max_leaf_nodes=5,min_samples_split=50)
|
68 |
+
S_algo.fit(x_train,y_train)
|
69 |
+
ypred2 = S_algo.predict(x_test)
|
70 |
+
elif selected_option =='SVM':
|
71 |
+
S_algo = SVC()
|
72 |
+
S_algo.fit(x_train,y_train)
|
73 |
+
ypred3 = S_algo.predict(x_test)
|
74 |
+
elif selected_option=='KNeighborsClassifier':
|
75 |
+
S_algo = KNeighborsClassifier()
|
76 |
+
S_algo.fit(x_train,y_train)
|
77 |
+
ypred4 = S_algo.predict(x_test)
|
78 |
+
else:
|
79 |
+
pass
|
80 |
+
|
81 |
+
return S_algo,pipeline
|