質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2465閲覧

csvからデータを読み込み,fftをし,csvまたはExcelに出力したいです

nonnon615

総合スコア19

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/06/16 10:30

編集2021/06/16 10:45

イメージ説明

import cv2 import numpy as np import matplotlib.pyplot as plt import csv import glob import pandas as pd ##### 実験条件、分析対象の設定 ###### t = np.arange(0,8.192,0.0005) #サンプリング時間,周波数の指定(開始時間(=0),終了時間,サンプリング周期) file = '0.73' #分析対象のファイル指定 ##### データの読み込みy ##### def loadvtp(file): #ファイルの読み込みに使用する関数の定義 vtp = pd.read_csv(file+'.csv', dtype='float', skiprows=57, usecols=[3], nrows=16384, engine='python', header=None) #解析対象となるデータの読み込み vtp = vtp - np.mean(vtp) #平均を引く vtp = np.squeeze(vtp) return vtp ##### 主流(x)成分出力の計算 ##### y = loadvtp(file) ##### FFT ##### freq = np.fft.fftfreq(16384, 1/2000) #周波数軸の生成(サンプリング点数, サンプリング周期) f = np.fft.fft(y) #FFT f[0]=f[0]/2 #定常成分を1/2にする(スケーリングに必要) ampy = np.abs(f)/(16384/2) #FFT結果を振幅に合わせてスケーリング freq = freq[0:16384] #周波数軸の対称成分を除く ampy = ampy[0:16384] #振幅の対称成分を除く ##### データの読み込みx ##### def loadvtp(file): #ファイルの読み込みに使用する関数の定義 vtp = pd.read_csv(file+'.csv', dtype='float', skiprows=57, usecols=[4], nrows=16384, engine='python', header=None) #解析対象となるデータの読み込み vtp = vtp - np.mean(vtp) #平均を引く vtp = np.squeeze(vtp) return vtp ##### 主流(x)成分出力の計算 ##### x = loadvtp(file) ##### FFT ##### f = np.fft.fft(x) #FFT f[0]=f[0]/2 #定常成分を1/2にする(スケーリングに必要) ampx = np.abs(f)/(16384/2) #FFT結果を振幅に合わせてスケーリング ampx = ampx[0:16384] #振幅の対称成分を除く ##### データの読み込みV ##### def loadvtp(file): #ファイルの読み込みに使用する関数の定義 vtp = pd.read_csv(file+'.csv', dtype='float', skiprows=57, usecols=[5], nrows=16384, engine='python', header=None) #解析対象となるデータの読み込み vtp = vtp - np.mean(vtp) #平均を引く vtp = np.squeeze(vtp) return vtp ##### 主流(x)成分出力の計算 ##### V = loadvtp(file) ##### FFT ##### f = np.fft.fft(V) #FFT f[0]=f[0]/2 #定常成分を1/2にする(スケーリングに必要) ampV = np.abs(f)/(16384/2) #FFT結果を振幅に合わせてスケーリング ampV = ampV[0:16384] #振幅の対称成分を除く ##### データの読み込みwave ##### def loadvtp(file): #ファイルの読み込みに使用する関数の定義 vtp = pd.read_csv(file+'.csv', dtype='float', skiprows=57, usecols=[6], nrows=16384, engine='python', header=None) #解析対象となるデータの読み込み vtp = vtp - np.mean(vtp) #平均を引く vtp = np.squeeze(vtp) return vtp ##### 主流(x)成分出力の計算 ##### wave = loadvtp(file) ##### FFT ##### f = np.fft.fft(wave) #FFT f[0]=f[0]/2 #定常成分を1/2にする(スケーリングに必要) ampwave = np.abs(f)/(16384/2) #FFT結果を振幅に合わせてスケーリング ampwave = ampwave[0:16384] #振幅の対称成分を除く df = [freq, ampy, ampx, ampV, ampwave] pd.DataFrame(df).to_csv('FFT.csv', index=None)

csvからデータを読み込み,fftをし,csvまたはExcelに出力したいです
開始時間が0秒,終了時間が8.192秒
時間刻みは0.0005秒
サンプリング点数は16384点
です.

58行目の3列目から6列目までの解析を行いたいのですが、

PROBLEM WITH THONNY'S BACK-END:

と出てしまいました.
usecolsをすべて=3とすればなぜか動きました.

また,出力が1行目に0.1.2.3....と続き,2行目に周波数,3行目から6行目に結果が出力されてしまいます.
列出力に直すにはどうしたらよろしいでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

[Python/Raspberry pi pico/エラー]Thonny からラズピコに書き込めないエラー ERROR thonny.backend: PROBLEM WITH THONNY’S BACK-END [Errno 30]には、

原因
Thonnyのバージョンが古いだけだった。
3.1を使用していました。
対策
Thonnyのバージョンを最新にしたら解決しました。
Circute Pythonの新しいバージョンにThonny3.1が対応していなかったのかもしれません。

と書かれていました。
これを試してみてはいかがですか。

投稿2021/06/16 12:39

ppaul

総合スコア24666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nonnon615

2021/06/17 04:09

アップデートしなおしたのですが,治りませんでした. 以下に詳細なエラーコードを示します. ERROR thonny.backend: PROBLEM WITH THONNY'S BACK-END Traceback (most recent call last): File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 1240, in wrapper result = method(self, *args, **kwargs) File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 1227, in wrapper return method(self, *args, **kwargs) File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 1297, in _execute_prepared_user_code exec(statements, global_vars) File "C:\Users\username\Desktop\M1\Python\実験データ処理(fft).py", line 91, in <module> f = np.fft.fft(wave) #FFT File "<__array_function__ internals>", line 6, in fft File "C:\Users\username\AppData\Roaming\Python\Python37\site-packages\numpy\fft\_pocketfft.py", line 185, in fft output = _raw_fft(a, n, axis, False, True, inv_norm) File "C:\Users\username\AppData\Roaming\Python\Python37\site-packages\numpy\fft\_pocketfft.py", line 56, in _raw_fft % n) ValueError: Invalid number of FFT data points (0) specified. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 1285, in execute_source return self._execute_prepared_user_code(statements, global_vars) File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 1245, in wrapper return {"user_exception": self._backend._prepare_user_exception()} File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 1078, in _prepare_user_exception "stack": self._export_stack(last_frame), File "C:\Users\username\AppData\Local\Programs\Thonny\lib\site-packages\thonny\plugins\cpython\cpython_backend.py", line 970, in _export_stack module_name = system_frame.f_globals["__name__"] KeyError: '__name__'
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問