python pandas: 将 json 数据分配给数据帧条目 returns 错误 "Incompatible indexer with Series"
python pandas: assigning a json data to a data frame entry returns error "Incompatible indexer with Series"
作为 python 的新手,我遇到了一个错误 "Incompatible indexer with Series"。
我正在从 postgreSQL 数据库中读取条目:
df_postgresDB = pd.read_sql_query('SELECT * FROM public.json_view',con=<...>)
exampleKey = 'FPB-83160'
jsonCol = 'efforts'
AreasDict = df_postgresDB.loc[exampleKey, jsonCol]
print('AreasDict=', AreasDict)
print('type(AreasDict)=', type(AreasDict))
...输出:
AreasDict= {'4G NeVe': 0, '4G FT ET': 400, '4G C-Plane': 800, 'MANO BTSSM': 0}
type(AreasDict)= <class 'dict'>
postgreSQL 数据库中的列显示类型 'jsonb':
这个'AreasDict'用于我要调用的另一个项目的函数中,re-use用于我的项目。但是在我的项目中,我需要从另一个来源构建数据。所以我创建了一个数据框并尝试分配 'AreasDict' ()...
column_names = ['issue_key', jsonCol]
df = pd.DataFrame(index=range(1,2), columns=column_names)
df.iloc[0, 0] = exampleKey
df.iloc[0, 1] = AreasDict
...最后一行代码我得到了那个错误
ValueError: Incompatible indexer with Series
我做错了什么?
在 pandas 中,非标量值的支持很差 - 许多函数应该会失败。
解决方案是转换为 list
字典列表:
jsonCol = 'j'
exampleKey = 'key'
AreasDict= {'4G NeVe': 0, '4G FT ET': 400, '4G C-Plane': 800, 'MANO BTSSM': 0}
column_names = ['issue_key', jsonCol]
df = pd.DataFrame(index=range(1,2), columns=column_names)
df.iloc[0, 0] = exampleKey
df.iloc[0, 1] = [AreasDict]
print (df)
issue_key j
1 key [{'4G NeVe': 0, '4G FT ET': 400, '4G C-Plane':...
作为 python 的新手,我遇到了一个错误 "Incompatible indexer with Series"。
我正在从 postgreSQL 数据库中读取条目:
df_postgresDB = pd.read_sql_query('SELECT * FROM public.json_view',con=<...>)
exampleKey = 'FPB-83160'
jsonCol = 'efforts'
AreasDict = df_postgresDB.loc[exampleKey, jsonCol]
print('AreasDict=', AreasDict)
print('type(AreasDict)=', type(AreasDict))
...输出:
AreasDict= {'4G NeVe': 0, '4G FT ET': 400, '4G C-Plane': 800, 'MANO BTSSM': 0}
type(AreasDict)= <class 'dict'>
postgreSQL 数据库中的列显示类型 'jsonb':
这个'AreasDict'用于我要调用的另一个项目的函数中,re-use用于我的项目。但是在我的项目中,我需要从另一个来源构建数据。所以我创建了一个数据框并尝试分配 'AreasDict' ()...
column_names = ['issue_key', jsonCol]
df = pd.DataFrame(index=range(1,2), columns=column_names)
df.iloc[0, 0] = exampleKey
df.iloc[0, 1] = AreasDict
...最后一行代码我得到了那个错误
ValueError: Incompatible indexer with Series
我做错了什么?
在 pandas 中,非标量值的支持很差 - 许多函数应该会失败。
解决方案是转换为 list
字典列表:
jsonCol = 'j'
exampleKey = 'key'
AreasDict= {'4G NeVe': 0, '4G FT ET': 400, '4G C-Plane': 800, 'MANO BTSSM': 0}
column_names = ['issue_key', jsonCol]
df = pd.DataFrame(index=range(1,2), columns=column_names)
df.iloc[0, 0] = exampleKey
df.iloc[0, 1] = [AreasDict]
print (df)
issue_key j
1 key [{'4G NeVe': 0, '4G FT ET': 400, '4G C-Plane':...