pandas--Dataframe基础操作

"二维数组"Dataframe

是一个表格型的数据结构,包含一组有序的列,其列的值类型可以是数值、字符串、布尔值等。

创建方式:

1  由数组/list组成的字典

import numpy as np
import pandas as pd  
# 导入numpy、pandas模块

data1 = {'a':[1,2,3],
        'b':[3,4,5],
        'c':[5,6,7]}
data2 = {'one':np.random.rand(3),
        'two':np.random.rand(3)}  
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
print(df1)
print('===========================”')
print(df2)

 

通过参数设置可以修改列名和索引名:index,columns

2 由Series组成的字典

data1 = {'one':pd.Series(np.random.rand(2)),
        'two':pd.Series(np.random.rand(3))}  # 没有设置index的Series
data2 = {'one':pd.Series(np.random.rand(2), index = ['a','b']),
        'two':pd.Series(np.random.rand(3),index = ['a','b','c'])}  # 设置了index的Series

df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
print(df1)
print('===========================”')
print(df2)
# 由Seris组成的字典 创建Dataframe,columns为字典key,index为Series的标签(如果Series没有指定标签,则是默认数字标签)
# Series可以长度不一样,生成的Dataframe会出现NaN值

 

 3 通过二维数组直接创建

import numpy as np
import pandas as pd  
# 导入numpy、pandas模块

ar = np.random.rand(9).reshape(3,3)
print(ar)
print('===========================\n')
df1 = pd.DataFrame(ar)
df2 = pd.DataFrame(ar, index = ['a', 'b', 'c'], columns = ['one','two','three']) 
print(df1)
print('===========================\n')
print(df2)

 

练习:用三种不同的方法,创建以下Dataframe(保证columns和index一致,值不做要求)

#使用二维数组创建
ar1 = np.random.random(9).reshape(3,3)
df1 = pd.DataFrame(ar1,index=['a','b','c'],columns=['one','two','three'])
df1

#使用Series组成字典创建
import random
ar2 = {'one':pd.Series(random.sample(range(10,20),3), index = ['a','b','c']),
        'two':pd.Series(random.sample(range(10,30),3),index = ['a','b','c']),
      'thr':pd.Series(random.sample(range(10,40),3),index = ['a','b','c'])}
df2 = pd.DataFrame(ar2)
df2

 

#直接使用字典创建
df3 = pd.DataFrame({'one':[1,2,3,4,5],
                   'two':[2,3,4,5,6],
                   'thr':[4,5,6,7,8],
                  'fou':[5,6,7,8,90]}
                   ,index=['a','b','c','d','e'])
df3

 

猜你喜欢

转载自blog.csdn.net/qq_14822691/article/details/83781879