読み込んだcsvの指定した範囲の行の中で、-1以下となる数字の個数の変化をグラフ出力したい
初心者です。
df = pd.read_csv('1104.csv') x = df['time'] y = df['gFz']-0.98 print(df) plt.figure(figsize=(16, 8)) plt.plot(x,y)
これを、
0450行の間に-1以下である数字が2つある(num=0)451行の間に-1以下である数字が2つある(num=1)
1
2452行の間に-1以下である数字が2つある(num=2)8950行の間に-1以下である数字が3つある(num=8500)
…
8500
…
17500~17950行の間に-1以下である数字が0つある(num=17500)
…
と言った具合で、
ある範囲の行(450行)のうち、-1以下である数字の個数をカウントしていき、
その個数をグラフとして出力したいのです。
例えば↓のようなイメージです。
上の図の赤線のようなグラフを作りたいです。
上記のグラフ作成方法について分かる方いらっしゃいましたら、
ご回答いただけると幸いです。
よろしくお願い申し上げます。
該当のソースコード
自分なりにやってみましたが、
Python3
1import pandas as pd 2import matplotlib.pyplot as plt 3%matplotlib inline 4 5df = pd.read_csv('1104.csv') 6z = df['gFz'] 7N = len(df['time']) #サンプリング数 8num = 0 9while num<=N: 10 R = z[num:num + 450] 11 C = sum(x < -1 for x in R) 12 plt.plot(num,C) 13 plt.draw() 14 num += 1
と打つと、jupyter notebookが固まってしまいます。
発生している問題・エラーメッセージ
赤のバックカラーに、
/Users/ユーザー名/miniconda3/lib/python3.7/site-packages/ipykernel_launcher.py:7: DeprecationWarning: Calling np.sum(generator) is deprecated, and in the future will give a different result. Use np.sum(np.fromiter(generator)) or the python sum builtin instead.
import sys
と出てしまいます。
補足情報(FW/ツールのバージョンなど)
macOS Catalina 10.15
jupyter notebook
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/15 06:02
2019/11/15 07:54
2019/11/15 10:44