如何将数据导出为比赛需要的csv文件?
我的ans_y_decode是这样一个numpy数组:
array([‘TVProgram-Play’, ‘HomeAppliance-Control’, ‘Audio-Play’, …,
‘Music-Play’, ‘Video-Play’, ‘Weather-Query’], dtype=object)
现在我想把这个数组存入csv,逗号分割,header为ID和Target,格式如下。如何写python代码?
ID,Target
1,TVProgram-Play
2,HomeAppliance-Control
3,Audio-Play
4,Alarm-Update
5,HomeAppliance-Control
6,FilmTele-Play
7,FilmTele-Play
8,Music-Play
9,Calendar-Query
10,Video-Play
11,Alarm-Update
12,Music-Play
13,Travel-Query
14,TVProgram-Play
你可以使用 pandas 库的 DataFrame.to_csv()
方法将 numpy 数组存储为 csv 文件。
具体步骤如下:
- 导入 pandas 库:
import pandas as pd
- 将 numpy 数组转换为 DataFrame:
df = pd.DataFrame(ans_y_decode, columns=['Target'])
其中,ans_y_decode
是一个 numpy 数组,columns=['Target']
表示给 DataFrame 添加一列名为 ‘Target’ 的数据。
- 添加 ID 列:
df.insert(0, 'ID', range(1, len(ans_y_decode) + 1))
其中,range(1, len(ans_y_decode) + 1)
生成了一个从 1 到数组长度的整数序列,并将其作为 ‘ID’ 列添加到 DataFrame 中。
- 将结果存为 csv 文件:
df.to_csv('result.csv', index=False)
其中,index=False
表示不要将 DataFrame 的索引保存到 csv 文件中,否则会多出一列 ‘Unnamed: 0’。
综合起来,完整代码如下:
import pandas as pd# 将 numpy 数组转换为 DataFrame
df = pd.DataFrame(ans_y_decode, columns=['Target'])# 添加 ID 列
df.insert(0, 'ID', range(1, len(ans_y_decode) + 1))# 将结果存为 csv 文件
df.to_csv('result.csv', index=False)
运行后,当前目录下就会生成一个名为 ‘result.csv’ 的文件,其内容格式符合要求。