我编写了一个函数来获取数据帧并生成数据字典以供以后处理。这似乎很简单,但我得到错误:
AttributeError: 'Index' object has no attribute 'value'
def createDataDict(df, keyname):
""" create a dictionary of dictionaries that looks like this:
{ <License_Number> : {<label>:<labelValue>, <feature1>:<feature1Value>, ...}
for example:
{ 123456: {'violator': False, Total_Sales': 1000, 'violation_count': 2} , ...}
"""
""" for each row in dataframe, pull off license number for key,
take each column name and value and add to dictionary
"""
keys = df[keyname]
for key in keys:
dict = {}
for col in reversed(list(df.columns.value)):
feature_values = {}
feature_values[col] = df[col]
dict[key] = feature_values
答案 0 :(得分:0)
您可以尝试使用df.columns
代替您撰写的内容df.columns.value
。
还有几件事需要注意......
reversed
。OrderedDict
。 dict(df[keyname])
。 (我会打电话给keyname
keynames
,但那就是我。你可以随意打电话。)答案 1 :(得分:0)
因为你确实有类型错误。您应该访问df.columns.values
而不是df.columns.value
。