我有两个numpy数组,每个数组的形状为(x,1)。我想将数据导出到CSV文件,所以看起来像这样
Channel- Freq(np Array 1)-FFT(np Array 2)-类(字符串标签)
Channel和class列将具有1个固定值,freq和FFT来自数组。
我已经尝试过使用np.column_stack,但这只允许组合freq和fft,没有别的。我尝试查看pandas DataFrame(从CSV导入后原始数据来自),目前找不到任何有用的信息。
def combine_data(freq, matrix):
combine_dt = np.column_stack((freq, matrix))
return combine_dt
def export_data_csv(freq, matrix):
combined_data = np.column_stack((freq, matrix))
np.savetxt("freq_amp.csv", combined_data, delimiter=",")
这仅适用于仅包含两列的CSV
答案 0 :(得分:0)
我认为使用熊猫更容易。
让我们说:
array1=[0,1,2,3,4]
array2=[10,11,12,13,14]
首先使用2个数组创建一个数据框,然后设置常量值:
my_df = pd.DataFrame(data={"freq":array1,"FFT":array2})
my_df["channel"]="channel_name"
my_df["class"]="class_name"
#Output
freq FFT channel class
0 0 10 channel_name class_name
1 1 11 channel_name class_name
2 2 12 channel_name class_name
3 3 13 channel_name class_name
4 4 14 channel_name class_name
然后您可以轻松将其导出到csv:
my_df.to_csv("filename.csv")
如果您不想/不需要设置索引:
my_df.to_csv("filename.csv",index=False)
有关其他选项,请查看文档pandas.to_csv()