Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python/Pandas中创建带有元数据头和时间序列的csv文件_Python_Csv_Pandas_Metadata - Fatal编程技术网

在Python/Pandas中创建带有元数据头和时间序列的csv文件

在Python/Pandas中创建带有元数据头和时间序列的csv文件,python,csv,pandas,metadata,Python,Csv,Pandas,Metadata,我正在尝试创建一个csv文件,该文件在前几行中包含元数据,然后是timeseries数据,这样它就可以被另一个web应用程序处理。我的csv文件应如下所示: Code: ABC1 Frequency: Monthly Description: Blah Blah ------------------- 2/1/1947 11.7 3/1/1947 11.9 我可以创建元数据的csv文件: metadata=pd.Series([('code: ABC123'),('fre

我正在尝试创建一个csv文件,该文件在前几行中包含元数据,然后是timeseries数据,这样它就可以被另一个web应用程序处理。我的csv文件应如下所示:

Code: ABC1

Frequency: Monthly

Description: Blah Blah

-------------------

2/1/1947    11.7

3/1/1947    11.9
我可以创建元数据的csv文件:

metadata=pd.Series([('code: ABC123'),('freqency: monthly'),('description: describecode'),('--------')])

metadata.to_csv("metadata.csv",index=False)
我可以创建timeseries的csv

a=pd.Series((11.7,11.9),index=pd.date_range('1947-01-02','1947-01-03'))

a.to_csv("data.csv")

但是我不知道如何将它们合并到顶部的格式中。

您最好使用DictWriter

>>> with open('test.csv', 'w') as fout:
...      fout.write('meta data\n:')
...      meta_data.to_csv(fout)
...      ts.to_csv(fout)
toCSV = [] #put all your data in a list of Dictionaries such as {'Date': ... etc}
keys = ['Date', .... ] #list of keys for data
file = open( filename.csv, 'wb')
dict_writer = csv.DictWriter(file, keys)
dict_writer.writer.writerow(Metadata)
dict_writer.writerows(toCSV)
file.close()

键创建许多列,然后编写器根据键写入数据(在字典中)。

如果您使用的是
pandas
,您应该用它标记问题,否则每个人都会认为这是关于
csv
模块或字符串操作的