![](/img/trans.png)
[英]Python: Generate dictionary from pandas dataframe with rows as keys and columns as values
[英]Read the keys and values from the columns of a dataframe in Python
我有一个包含两列的 csv 文件。 一个用于时间段,一个用于能量。 我将此文件放入 pandas dataframe 并附上此文件的屏幕截图。
现在我想要一个字典,它以一列中的条目作为键值,另一列中的条目作为值。 我尝试了此处提到的所有选项将 Pandas DataFrame 转换为字典,但没有成功。 在这里你可以看到我的代码和我的尝试。 我指出了所需的字典:
import pyomo.environ as pyo
import pandas as pd
#Define the model
model = pyo.ConcreteModel()
#Define the sets
model.set_timeslots = pyo.RangeSet(0,95)
# Read the data for the parameters from a csv file
dataframe = pd.read_csv("C:/Users/energy.csv", sep =";")
dictionary_dict = dataframe.to_dict('dict')
dictionary_list = dataframe.to_dict('list')
dictionary_series = dataframe.to_dict('series')
dictionary_split = dataframe.to_dict('split')
desiredDictionary = {'t0':7696850, 't1':7765100 , 't2': 7833350}
你能告诉我如何自动创建这个想要的 dataframe 吗? 我会很感激每一条评论。
利用:
d = dataframe.head(3).set_index('Timeslot')['Energy'].to_dict()
如果需要所有值:
d1 = dataframe.set_index('Timeslot')['Energy'].to_dict()
编辑:
如果需要二维键 - 元组使用:
d = dataframe.head(3).set_index(['Timeslot', 'household'])['Energy'].to_dict
d1 = dataframe.set_index(['Timeslot', 'household'])['Energy'].to_dict()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.