使用Python2.7。在
我每天早上运行一个函数来创建一个带有键和值的输出字典。输出字典结果如下所示:
“约翰”:1
“杰克”:5
“露西”:235
“莎拉”:33岁
然后打开一个现有的csv文件,该文件的列/行如下所示:
名称1/1/17 1/2/17
约翰5 88
杰克31 34
莎拉45 12
露西77 57
其中,列A标题始终是名称,每个连续的列标题是列中数据的日期。在
我正在尝试编写一个函数,该函数将:
打开csv, 写入csv 将日期追加到下一个可用的列标题(即第1行) 然后 在csv中查找与我的字典中的键匹配的键 将字典中的值附加到csv中的下一个打开列
使用上面的例子,然后
名称1/1/17 1/2/17
约翰5 88
杰克31 34
莎拉45 12
露西77 57
变成
名称1/1/17 1/2/17 1/3/17
约翰5 88 1
杰克31 34 5
莎拉45 12 33
露西77 57 235
我已经非常接近我要用以下代码来做的事情:
import pandas as pd
import datetime
starter_df = pd.read_csv('keyword_results.csv', names = ['Keyword'])
#dictionary created by function
test_dic = {"John": 12, "Jake": 45, "Sarah": 31, "Lucy": 18}
now = datetime.datetime.now()
str_date = now.strftime("%m %d %Y")
starter_df[str_date] = starter_df["Keyword"].map(test_dic)
starter_df.to_csv('keyword_results.csv')
我正在将csv读入一个dataframe,尝试将新列映射到dataframe,然后将dataframe输出到csv。在
问题是这是将日期写入新列,但它下面没有数据。在
我不知所措,谢谢你的帮助。我对Python还是个新手。在
你可以用lambda来做,这很简单,也很快。在读取csv时也不需要添加参数“names=['Keyword']”。在
相关问题 更多 >
编程相关推荐