pandas通过字典生成dataframe的方法步骤

yipeiwu_com6年前Python基础

1、将一个字典输入:

该字典必须满足:value是一个list类型的元素,且每一个key对应的value长度都相同:

(以该字典的key为columns)

>>> import pandas as pd
>>> a = [1,2,3,4,5]
>>> b = ["a","b","c"]
>>> c = 1
>>> df = pd.DataFrame({"A":a,"B":b,"C":c})
Traceback (most recent call last):
ValueError: arrays must all be same length
>>> df = pd.DataFrame([a,b]) # 作为list输入,list的元素必须也是list,加入c就错误
>>> df
  0 1 2  3  4
0 1 2 3 4.0 5.0
1 a b c NaN NaN

# 统一一下字典每个元素值的长度
>>> b = ["a","b","c","d","e"]
>>> c = ("232","sdf","345","asd",1)
>>> df = pd.DataFrame({"A":a,"B":b,"C":c})
>>> df
  A B  C
0 1 a 232
1 2 b sdf
2 3 c 345
3 4 d asd
4 5 e  1

2、将多个key相同的字典列输入:

输入为一个list,该list各个元素为dict,且key可以不同(以含最多的key的字典的key为columns):

>>> d1 = {"A":1,"B":2,"C":3}
>>> d2 = {"A":"a","B":"b",}
>>> d3 = {"A":(1,2),"B":"ab","C":3}
>>> li = [d1,d2,d3]
>>> df = pd.DataFrame(li)
>>> df
    A  B  C
0    1  2 3.0
1    a  b NaN
2 (1, 2) ab 3.0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决

django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决

一、现象 最近在数据库中删除了一张表,重新执行python manage.py migrate时出错,提示不存在这张表。通过查找相关的资料,最后找到了相关的解决方法,下面话不多说了,来一...

Python2.x中文乱码问题解决方法

Python2.x中文乱码问题解决方法

Python中乱码问题是一个很头痛的问题。 在Python3中,对中文进行了全面的支持,但在Python2.x中需要进行相关的设置才能使用中文。否则会出现乱码 【问题原因】 在Pyth...

Python内置函数delattr的具体用法

delattr 函数用于删除属性。 delattr(x, 'foobar') 相等于 del x.foobar。 语法 setattr 语法:delattr(object, nam...

numpy中实现二维数组按照某列、某行排序的方法

如何根据二维数组中的某一行或者某一列排序?假设data是一个numpy.array类型的二维数组,可以利用numpy中的argsort函数进行实现,代码实例如下: data = da...

详解python实现识别手写MNIST数字集的程序

我们需要做的第⼀件事情是获取 MNIST 数据。如果你是⼀个 git ⽤⼾,那么你能够通过克隆这本书的代码仓库获得数据,实现我们的...