Pandas高级数据结构-创建方式

Series的介绍

series的创建

  • 1.通过列表创建
import numpy as numpy
import pandas as pd
s1 = pd.Series([1,2,3,4])
s1

0    1
1    2
2    3
3    4
4    5
dtype: int64
  • 2.通过数组创建
s2 = pd.Series(np.arange(1,6))
s2


0    1
1    2
2    3
3    4
4    5
dtype: int32

** 注意:上述两种方式的创建方法列表是int64 数组是int32

DataFrame

DataFrame创建


  • 1.列表、元组、数组构成的字典创建dataframe
# 字典的键变成列 值变成行填充进去
data = {
    'A':[1,2,3,4],
    'B':(5,6,7,8),
    'C':np.arange(9,13)
}
frame = pd.DataFrame(data)
frame

    A   B   C
0   1   5   9
1   2   6   10
2   3   7   11
3   4   8   12
  • 2.Series构成的字典构造dataframe
pd1 = pd.DataFrame({'a':pd.Series(np.arange(3)),
             'b':pd.Series(np.arange(3,5))})
pd1

    a    b
0   0   3.0
1   1   4.0
2   2   NaN
# 共用一个索引 如果一个列中没有这行的索引则用nan填充
  • 3.构造二维数据对象
arr1 = np.arange(12).reshape(4,3)
arr1

array([[ 0,  1,  2],
       [ 3,  4,  5],
       [ 6,  7,  8],
       [ 9, 10, 11]])


frame1 = pd.DataFrame(arr1)
frame1

    0   1   2
0   0   1   2
1   3   4   5
2   6   7   8
3   9   10  11
# 通过二维数组更能清楚的明白numpy和pandas之前的关系
  • 4.字典构成的列表构造dataframe
l1 = [{'apple':3.6,'banana':5.6},{'apple':3,'banana':5},{'apple':3.2}]
pd3 = pd.DataFrame(l1)
pd3


   apple    banana
0   3.6      5.6
1   3.0      5.0
2   3.2      NaN
#把列表中的索引下标当作行索引 字典里的键同样是作业列索引 然后依次从0开始对于行索引
  • 5.Series构成的列表构造dataframe
l2 = [pd.Series(np.random.rand(3)),pd.Series(np.random.rand(2))]
pd4 = pd.DataFrame(l2)

pd4

       0            1         2
0   0.998996    0.960031    0.988391
1   0.649718    0.316651    NaN

# 列下标作为行索引 series的索引作为列索引 然后依次填入值

原文链接:https://blog.csdn.net/weixin_44984627/article/details/104746098

你可能感兴趣的:(Pandas高级数据结构-创建方式)