python DateFrame学习

DateFrame介绍

字典类:

数组、列表或元组构成的字典构造dataframe

Series构成的字典构造dataframe

字典构成的字典构造dataframe

列表类:

2D ndarray 构造dataframe

字典构成的列表构造dataframe

Series构成的列表构造dataframe

import numpy as np
import pandas as pd
# 数组、列表或元组构成的字典构造dataframe
#构造一个字典
data = {'a':[1,2,3,4],
        'b':(5,6,7,8),
       'c':np.arange(9,13)}
data
{'a': [1, 2, 3, 4], 'b': (5, 6, 7, 8), 'c': array([ 9, 10, 11, 12])}
#构造dataframe
frame = pd.DataFrame(data)
frame

type(frame)
pandas.core.frame.DataFrame
#index属性查看行索引
frame.index

RangeIndex(start=0, stop=4, step=1)




#columns属性查看列索引
frame.columns

Index(['a', 'b', 'c'], dtype='object')



#values属性查看值
frame.values

array([[ 1,  5,  9],
       [ 2,  6, 10],
       [ 3,  7, 11],
       [ 4,  8, 12]], dtype=int64)

#指定index
frame = pd.DataFrame(data,index=['A','B','C','D'])#指定行索引的时候,长度必须字典的元素的值(序列容器)长度相等
frame


#指定列索引
frame = pd.DataFrame(data,index=['A','B','C','D'],columns=['a','b','c','d'])#指定列索引的时候,长度不一定与字典的长度相同
frame


#指定列索引
frame = pd.DataFrame(data,index=['A','B','C','D'],columns=['a','b','c'])
frame

DataFrame的基本用法

T转置

通过列索引获取列数据(Series类型)

增加列数据

 删除列

#dataframe
pd5 = pd.DataFrame(np.arange(9).reshape(3,3),index=['a','c','b'],columns=['A','B','C'])
pd5
#和numpy一样 进行转置   行与列进行转置
pd5.T
#获取指定某列的数据只能用列索引
pd5['B']

a    1
c    4
b    7
Name: B, dtype: int32

pd5[['A']]

pd5['A']
print(type(pd5['A']))


#增加列数据,列索引在Dataframe对象数据里面不存在,如果存在则是修改存在的列的数据
pd5['D'] = [1,2,3]
pd5


#已经存在的列数据做运算后可以添加到新的一列
pd5['E'] = pd5['A']+pd5['C']

pd5

del(pd5['D'])
pd5

练习

# 创建一个DataFrame
data = {
    "姓名":['张三','李四','王五','小明','小红','小刚','小亮'],
    "语文":[89,78,79,89,90,87,83],
    "数学":[59,83,85,92,67,81,77],
    "英语":[84,97,88,83,67,73,71],
    "体育":[0,0,0,0,0,0,0]
}
df = pd.DataFrame(data)
df

# 3. 删除体育成绩
df.drop(columns=['体育'],inplace=True)
df

 

# 4. 添加“综合”这个课程的成绩
df['综合'] = [97,87,78,76,84,88,91]
df

 

猜你喜欢

转载自blog.csdn.net/irisMoon06/article/details/129821536
今日推荐