質問編集履歴

2

質問追加

2018/11/12 07:42

投稿

bkts94441
bkts94441

スコア18

test CHANGED
File without changes
test CHANGED
@@ -103,3 +103,65 @@
103
103
  Y軸を"mean_velocity列" 又は"count_velocity列" に設定してグラフを出力しています。
104
104
 
105
105
  今回行いたいことは、計測データ.csvの"DateTime列"と外れ値チェックリスト.xlsxの"Date列"の日付が同じ月日であれば"Date列"と"DateTime列"が一致する日付の行へとdataframeを結合させたいのですがどのようにすればよろしいでしょうか。
106
+
107
+
108
+
109
+ ### 質問追記 2018/11/12
110
+
111
+ ### 変更後,外れ値チェックリスト.xlsx
112
+
113
+ ```
114
+
115
+ Date sampleA
116
+
117
+ 1 2018-03-08 19:12:22 NaN
118
+
119
+ 36 2018-03-09 18:20:30 ok
120
+
121
+ 133 2018-03-10 14:00:00 ok
122
+
123
+ 242 2018-03-10 02:02:11 empty
124
+
125
+ 336 2018-03-11 14:00:00 ok
126
+
127
+ .. ... ...
128
+
129
+ 6114 2018-04-17 14:20:31 ok
130
+
131
+ 6201 2018-04-18 02:00:00 ok
132
+
133
+ 6295 2018-04-18 14:03:02 ok
134
+
135
+ 6390 2018-04-19 02:00:00 ok
136
+
137
+ 6485 2018-04-19 14:20:30 ok
138
+
139
+ ```
140
+
141
+ 上記のチェックリスト.xlsxファイルの仕様が変更し、時刻を追加することになりました。
142
+
143
+ 時刻が2時台と14時台は問題無く計測出来ていると判断していますが、稀に他の時間帯で計測しているデータがあります。また、2時台と14時台の時刻が完全に一致していないこともあり、計測データ.csvを```df["DateTime"].dt.hour```で時間のみ抽出して結合を試みて、series型で返ってきた"DateTime"を再度結合してからもう一度DataFrame化をしたら下記のようになりました。どうにかして分秒を除いて時間のみで```pd.merge```を行いたいのですが何か良い方法はありますでしょうか。再度質問をして恐れ入りますがご回答よろしくお願い致します。
144
+
145
+
146
+
147
+ ```
148
+
149
+ DateTime Operated cycles sampleA
150
+
151
+ 1 1970-01-01 00:00:00.000000019 -2224389.0 6.809720
152
+
153
+ 36 1970-01-01 00:00:00.000000018 -2205153.0 9.529389
154
+
155
+ 133 1970-01-01 00:00:00.000000014 -1965408.0 4.865321
156
+
157
+ 242 1970-01-01 00:00:00.000000002 -1929389.0 3.787791
158
+
159
+ 336 1970-01-01 00:00:00.000000014 -1893374.0 6.848335
160
+
161
+ 432 1970-01-01 00:00:00.000000002 -1857366.0 7.682003
162
+
163
+ 528 1970-01-01 00:00:00.000000014 -1821352.0 5.676905
164
+
165
+ 624 1970-01-01 00:00:00.000000002 -1785344.0 8.802663
166
+
167
+ ```

1

不足部分の修正

2018/11/12 07:42

投稿

bkts94441
bkts94441

スコア18

test CHANGED
File without changes
test CHANGED
@@ -1,61 +1,105 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- 現在、計測データ.csvのデータ可視化結果から、
3
+ 現在、機械の一定動作を記録する実験を行っており、計測データ.csvには実験動作のデータが記載されています。
4
4
 
5
- 日付毎に抽出され外れ値や計測失敗データをまとめた表、チェックリスト.xlsx作成しました
5
+ 計測データ.csvでデータグラフ化てい
6
6
 
7
- そこから、参考ならないデータをチェックをしないように、csvファイルとxlsxファイルを結合して
7
+ 日付毎抽出された外れ値や計測失敗データをまとめた表をチェックリスト.xlsxして作成しました。
8
8
 
9
- チェック対象の日付を違う色で出力することを試みています。
9
+ 次に、チェック対象データを予め分かりやすくするため、チェック対象の日付を違う色で出力することを試みています。
10
+
11
+ ### 計測データ.csv
12
+
13
+ ```ここに言語名を入力
14
+
15
+ Unnamed: 0 DateTime Operated cycles hdtemp \
16
+
17
+ 1 1 2018-03-08 19:53:38.590 -2224389.0 0.0
18
+
19
+ 36 36 2018-03-09 18:19:22.260 -2205153.0 32.1
20
+
21
+ 133 133 2018-03-16 14:02:03.760 -1965408.0 56.8
22
+
23
+ 242 242 2018-03-17 02:02:08.130 -1929389.0 58.9
24
+
25
+ 336 336 2018-03-17 14:02:07.820 -1893374.0 58.7
26
+
27
+ ... ... ... ...
28
+
29
+
30
+
31
+ 6114 6114 2018-04-16 14:02:10.810 -79607.0 40.6
32
+
33
+ 6201 6201 2018-04-17 02:02:11.640 -63454.0 51.6
34
+
35
+ 6295 6295 2018-04-17 14:02:15.340 -43630.0 49.3
36
+
37
+ 6390 6390 2018-04-18 02:02:12.070 -23799.0 53.2
38
+
39
+ 6485 6485 2018-04-18 14:02:15.750 -3975.0 50.9
40
+
41
+
42
+
43
+ count_velocity mean_velocity
44
+
45
+ 1 3287.0 104.510044
46
+
47
+ 36 3286.0 104.511719
48
+
49
+ 133 3289.0 104.595172
50
+
51
+ 242 3290.0 104.485199
52
+
53
+ 336 3292.0 104.495872
54
+
55
+ ... ...
56
+
57
+ 6114 3280.0 104.503950
58
+
59
+ 6201 3279.0 104.501253
60
+
61
+ 6295 3280.0 104.500587
62
+
63
+ 6390 3268.0 104.511174
64
+
65
+ 6485 3296.0 104.493659
66
+
67
+ ```
68
+
69
+ ### 外れ値チェックリスト.xlsx
70
+
71
+ ```
72
+
73
+ Date sampleA
74
+
75
+ 8 2018-03-09 not
76
+
77
+ 15 2018-03-16 not
78
+
79
+ 16 2018-03-17 not
80
+
81
+ 17 2018-03-18 not
82
+
83
+ 18 2018-03-19 not
84
+
85
+ ... ... ...
86
+
87
+ 14 2018-04-15 not
88
+
89
+ 15 2018-04-16 not
90
+
91
+ 16 2018-04-17 not
92
+
93
+ 17 2018-04-18 not
94
+
95
+ 18 2018-04-19 not
96
+
97
+ ```
10
98
 
11
99
  ### 発生している問題・エラーメッセージ
12
100
 
13
- 下記dataframecsvファイルとxlsxファイルを結合したものです。
101
+ グラフ出力する際、計測データ.csvX軸を"Operated cycles列",
14
102
 
15
- indexは結合前は両方不揃だったので初期化しした
103
+ Y軸を"mean_velocity列" 又は"count_velocity列" に設定してグラフを出力していま
16
104
 
17
- "DateTime"が出力データ.csvファイルで、
18
-
19
- "Operated cycles"も出力データ.csvファイルにあり、グラフ出力の際にX軸として使用しているものです。
20
-
21
- そこから、チェックリスト.xlsxに記載されている"Date"の日付を部分一致などで
22
-
23
- 日付が一致した"DateTime"及び"Operated cycles"へ結合させたいのですが
105
+ 今回行いいことは、計測データ.csvの"DateTime"と外れ値チェックリスト.xlsxの"Date列"の日付が同じ月日であれば"Date列"と"DateTime列"が一致する日付の行とdataframeを結合させたいのですがどのようにすればよろしいでしょうか。
24
-
25
- ネットで色々調べて実行しても理想通りの処理が出来ませんでしたので、ご教示いただけないでしょうか。
26
-
27
- ### dataframeの中身
28
-
29
- ```ここに言語名を入力
30
-
31
- DateTime Date Operated cycles
32
-
33
- 0 2018-03-08 19:53:38.590 2018-03-09 -2224389.0
34
-
35
- 1 2018-03-09 18:19:22.260 2018-03-16 -2205153.0
36
-
37
- 2 2018-03-16 14:02:03.760 2018-03-17 -1965408.0
38
-
39
- 3 2018-03-17 02:02:08.130 2018-03-18 -1929389.0
40
-
41
- 4 2018-03-17 14:02:07.820 2018-03-19 -1893374.0
42
-
43
- 5 2018-03-18 02:02:08.160 2018-03-20 -1857366.0
44
-
45
- .. ... ... ...
46
-
47
- 64 2018-04-16 14:02:10.810 NaT -79607.0
48
-
49
- 65 2018-04-17 02:02:11.640 NaT -63454.0
50
-
51
- 66 2018-04-17 14:02:15.340 NaT -43630.0
52
-
53
- 67 2018-04-18 02:02:12.070 NaT -23799.0
54
-
55
- 68 2018-04-18 14:02:15.750 NaT -3975.0
56
-
57
-
58
-
59
- [69 rows x 3 columns]
60
-
61
- ```