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设计】。

相关文章

Python坐标线性插值应用实现

Python坐标线性插值应用实现

一、背景 在野外布设700米的测线,点距为10米,用GPS每隔50米测量一个坐标,再把测线的头和为测量一个坐标。现在需使用线性插值的方法求取每两个坐标之间的其他4个点的值。 二、插值原...

Python探索之静态方法和类方法的区别详解

面相对象程序设计中,类方法和静态方法是经常用到的两个术语。 逻辑上讲:类方法是只能由类名调用;静态方法可以由类名或对象名进行调用。 python staticmethod and cla...

Python 3中的yield from语法详解

前言 最近在捣鼓Autobahn,它有给出个例子是基于asyncio 的,想着说放到pypy3上跑跑看竟然就……失败了。 pip install asyncio直接报invalid sy...

Pycharm 2019 破解激活方法图文详解

Pycharm 2019 破解激活方法图文详解

使用破解补丁方法虽然麻烦,但是可用激活到2099年,基本上是永久激活了,毕竟在座各位能活到这个年份也是寥寥无几了吧!! 步骤一、下载破解补丁, 链接: https://pan.baid...

python PIL/cv2/base64相互转换实例

PIL和cv2是python中两个常用的图像处理库,PIL一般是anaconda自带的,cv2是opencv的python版本。base64在网络传输图片的时候经常用到。 ##PIL...