質問するログイン新規登録

回答編集履歴

2

サンプルコード追加

2019/07/12 03:12

投稿

amahara_waya
amahara_waya

スコア1029

answer CHANGED
@@ -1,3 +1,34 @@
1
+ -コメントを受けて-
2
+
3
+ 一応、自分が状況再現に用いたコードを載せておきます。これがうまく動作するかどうかも試してもらえると、回答時の参考になります。
4
+
5
+ ```python
6
+ import pandas as pd
7
+ import datetime
8
+
9
+ ##logf.logの中身(メモ帳で作ってlog拡張子で保存)
10
+
11
+ #Date Time(UTC),Refid,Raw offset,Cooked offset,Disp.
12
+ #2019-05-25 16:51:22.999972,PPSx,2.73E-05,0.000027,1.00E-09
13
+ #2019-05-25 16:51:22.323771,NMEA,-3.24E-01,0.176228,1.00E-03
14
+ #2019-05-25 16:51:23.999975,PPS,2.43E-05,0.000024,1.00E-09
15
+ #2019-05-25 16:51:23.999975,PPSx,2.43E-05,0.000024,1.00E-09
16
+ #2019-05-25 16:51:23.324379,NMEA,-3.24E-01,0.175621,1.00E-03
17
+ #2019-05-25 16:51:24.999973,PPS,2.66E-05,0.000027,1.00E-09
18
+ #2019-05-25 16:51:24.999973,PPSx,2.66E-05,0.000027,1.00E-09
19
+
20
+ #logファイルの読み込み
21
+ df=pd.read_csv('logf.log')
22
+
23
+ #読み込み時点ではDate Time(UTC)のdtypeがobjectなのでdatetime64[ns]に変える
24
+ df['Date Time(UTC)']=pd.to_datetime(df['Date Time(UTC)'])
25
+
26
+ #データ抽出(どちらのコードでもうまくいった)
27
+ df[df['Refid'] == 'PPS']
28
+ df.query("Refid == 'PPS'")
29
+ ```
30
+ ---
31
+
1
32
  試したこと2について、以下のように修正した場合はどうでしょう。
2
33
  ※コードにミスが有ったので修正しました。
3
34
 

1

コードの修正

2019/07/12 03:12

投稿

amahara_waya
amahara_waya

スコア1029

answer CHANGED
@@ -1,11 +1,12 @@
1
1
  試したこと2について、以下のように修正した場合はどうでしょう。
2
+ ※コードにミスが有ったので修正しました。
2
3
 
3
4
  ```python
4
5
  #修正前
5
6
  df.query('Refid' == 'PPS')
6
7
 
7
- #修正後(等式全体を””で囲)
8
+ #修正後(等式全体を””で囲み、'Refid'をRefidに変える)
8
- df.query("'Refid' == 'PPS'")
9
+ df.query("Refid == 'PPS'")
9
10
  ```
10
11
 
11
12
  参考:[note.nkmk.me - pandas.DataFrameの行を条件で抽出するquery](https://note.nkmk.me/python-pandas-query/)