[Python3]Pandas实现字典dict转换成DataFrame的4种方法
python3 pandas 用字典创建数据框时报错ValueError: If using all scalar values, you must pass an index
if __name__ == __main__:
import pandas as pd
data = {
name: Wang, age: 15, sex: male}
df = pd.DataFrame(data)
报错原因:
直接传入标称属性为value的字典需要写入index,即需要在创建DataFrame对象时设定index
解决方案:
方法1、创建DataFrame时,设置Index
if __name__ == __main__:
import pandas as pd
data = {
name: Wang, age: 15, sex: male}
df = pd.DataFrame(data, index=[0])
print(df)
方法2、通过from_dict函数将value为标称变量的字典转换为DataFrame对象
if __name__ == __main__:
import pandas as pd
data = {
name: Wang, age: 15, sex: male}
df = pd.DataFrame.from_dict(data, orient=index).T
print(df)
方法3、输入字典时,不要让value为标称属性,把value转换为list对象再传入
if __name__ == __main__:
import pandas as pd
data = {
name: [Wang], age:[ 15], sex: [male]}
df = pd.DataFrame(data)
print(df)
方法4、将key和value取出来,转换为list对象
if __name__ == __main__:
import pandas as pd
data = {
name: Wang, age: 15, sex: male}
df = pd.DataFrame(list(data.items()))
print(df)
