要求是生成一个 csv 文件,其中每列是频率为 1 Hz、2 Hz、3Hz、4Hz、5Hz、6Hz、7Hz 的正弦波数据。因此共有 7 列。
1Hertz 有 100 个波点,因此总共 100 x 700= 70,000 个点。
谁能解释如何为这个要求编码
要求是生成一个 csv 文件,其中每列是频率为 1 Hz、2 Hz、3Hz、4Hz、5Hz、6Hz、7Hz 的正弦波数据。因此共有 7 列。
1Hertz 有 100 个波点,因此总共 100 x 700= 70,000 个点。
谁能解释如何为这个要求编码
你可以试试这个。这里,
有关 Python 中正弦波的更多有用详细信息,请参阅此链接
import numpy as np
import pandas as pd
def get_values_for_frequency(freq):
# sampling rate
sr = 100.0
# sampling interval
ts = 1.0/sr
t = np.arange(0,1,ts)
# frequency of the signal
freq = 5
y = np.sin(2*np.pi*freq*t)
return y
df = pd.DataFrame(columns =['1Hz','2Hz', '3Hz', '4Hz', '5Hz', '6Hz', '7Hz'])
df['1Hz']=pd.Series(get_values_for_frequency(1))
df['2Hz']=pd.Series(get_values_for_frequency(2))
df['3Hz']=pd.Series(get_values_for_frequency(3))
df['4Hz']=pd.Series(get_values_for_frequency(4))
df['5Hz']=pd.Series(get_values_for_frequency(5))
df['6Hz']=pd.Series(get_values_for_frequency(6))
df['7Hz']=pd.Series(get_values_for_frequency(7))
df.to_csv('sine.csv', index=False)
生成的 csv 文件的示例输出: