**1.pythonでcsvデータを読みこんで、8時から17時まで15分毎のデータを表示させたいため,下記のプログラムを作成しています。
**
python
1import csv, os 2import pandas as pd 3import numpy as np 4import datetime 5 6#対象のファイルのパス文字列を指定 7file_path = os.path.join(".","/home/pi/Desktop/cplog.csv") 8print("file name:" + file_path) 9 10#CSVファイルからdfへ変換 11df = pd.read_csv(file_path,names = ["tm","CP1","CP2","CP3","CP4"]) 12df["tm"] = pd.to_datetime(df["tm"]) 13 14#読み込んだデータの表示 15df.head(97500) 16print(df) 17 18#TODO:dfからの目的のデータの取得 19ret1 = df.groupby(pd.Grouper(key="tm", axis=0, freq='900S')).mean()['CP1'].reset_index() 20ret2 = df.groupby(pd.Grouper(key="tm", axis=0, freq='900S')).mean()['CP2'].reset_index() 21ret3 = df.groupby(pd.Grouper(key="tm", axis=0, freq='900S')).mean()['CP3'].reset_index() 22ret4 = df.groupby(pd.Grouper(key="tm", axis=0, freq='900S')).mean()['CP4'].reset_index() 23 24print(ret1,ret2,ret3,ret4) 25
2.読みこむCSVのデータ
時間は8:00~17:00までです。ラズベリーパイは自動で電源ON,OFFにしています。
2021/12/6 8:00:00 243 87 151 139
2021/12/6 8:00:01 248 88 168 138
2021/12/6 8:00:02 254 87 145 127
2021/12/6 8:00:03 253 86 153 134
2021/12/6 8:00:04 251 87 144 127
2021/12/6 8:00:05 247 87 159 127
3.プログラムを実装すると
Name: CP2, Length: 377, dtype: float64 tm
2021-12-03 16:00:00 69.503546
2021-12-03 16:15:00 98.130841
2021-12-03 16:30:00 100.000000
2021-12-03 16:45:00 99.065421
2021-12-03 17:00:00 100.000000
2021-12-03 17:15:00 NaN
2021-12-03 17:30:00 NaN
2021-12-03 17:45:00 NaN
2021-12-03 18:00:00 NaN
2021-12-03 18:15:00 NaN
となってしまい、17時以降も表示されてしまいます。
how allを使用してもエラーになってしまうため困っております。
python
1print(ret1,(how = 'all'))
Traceback (most recent call last):
File "/home/pi/Desktop/desuktop20211110/testprogram/test2021120702.py", line 23
print(ret1,(how = 'all'))
^
SyntaxError: invalid syntax
date_rangeを使用してもエラーがでます
python
1#CSVファイルからdfへ変換 2df = pd.read_csv(file_path,names = ["tm","CP1","CP2","CP3","CP4"]) 3df["tm"] = pd.to_datetime(df["tm"]) 4tm = pd.date_range('08:00:00','17:00:00') 5
Traceback (most recent call last):
File "/home/pi/Desktop/desuktop20211110/testprogram/test2021120701.py", line 23
ret1 = df.groupby(pd.Grouper(key="tm", axis=0, 08:00:00 17:00:00 freq='900S')).mean()['CP1']
^
SyntaxError: invalid token
4.出力させたいデータは8時から17時までなので、どなたか値がNanの部分を表示されない方法をご教示ください。**
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/07 06:47 編集
2021/12/07 07:14
2021/12/07 07:15
2021/12/07 09:08
2021/12/07 11:30
2021/12/08 00:42