学习python第八天

#pandas基础学习
import pandas as pd
import numpy as np
s1 = pd.Series([4, 7, 9, 11]) #创建一个series,索引为默认值,注意首字母大写
print(s1)
print(s1.values) #输出series值
print(s1.index) #输出索引

s2 = pd.Series([4, 5.2, 6.8, 3], index=[‘w’, ‘e’, ‘f’, ‘m’]) #可以给s2指定索引值
print(s2)
print(s2[[‘w’]]) #按照索引值单独输出
print(s2[[‘w’, ‘e’, ‘m’]]) #按照索引值输出多个数据

j = ‘w’ in s2 #可以判断series中是否有确定的值
print(j)
i = ‘a’ in s2
print(i)

#series 可以看成一个定长的有序字典
dic1 = {‘apple’: 5, ‘pen’: 10, ‘pencil’: 2}
s3 = pd.Series(dic1)
print(s3)

#学习二维表结构 DataFrame

data = {‘year’: [2017, 2018, 2019, 2020],
‘income’: [1000, 2000, 3000, 4000],
‘pay’: [200, 300, 400, 500]
}
df1 = pd.DataFrame(data) #这样会构建一个二维表格,输出相应的表格信息
print(df1)

#第二种构建表格的方法
df2 = pd.DataFrame(np.arange(12).reshape(3, 4)) #构成三行四列的表格
print(df2)

#使用我们自己设定的表头和序列
df3 = pd.DataFrame(np.arange(12).reshape(3, 4), index=[‘1’, ‘8’, ‘0’], columns=[‘a’, ‘b’, ‘d’, ‘c’])
print(df3) #index 设置行,columns设置列
#调用行或者列或者表格中的值
print(df3.columns)
print(df1.index)
print(df3.values)
#对表格中值进行表述
print(df1.describe())#最大最小值、平均值、方差等
#表格倒置

print(df1.T)
#表格行排序
print(df3.sort_index(axis=0))
#表格列排序
print(df3.sort_index(axis=1)) #行排序和列排序对于数字和字母都能排序
#表哥中的某一行或者某一列进行排序

print(df3.sort_values(by=‘a’))

##pandas 选择数据
import pandas as pd
import numpy as np
dates = pd.date_range(‘20200221’, periods=6)
df1 = pd.DataFrame(np.arange(24).reshape((6, 4)), index=dates, columns=[‘a’, ‘b’, ‘c’, ‘d’])
print(df1) #构成一个从20200221开始六天数据为行表头,列为abcd的二维表
print(df1[‘a’]) #打印a列数据,获取为一个series
print(df1.a) #打印a列数据,获取为一个series的另一种方式
print(df1[0:2]) #获取第0-1行
print(df1[‘20200221’:‘20200222’]) #获取第0-1行的另一种方式

#通过标签选择数据

print(df1.loc[‘20200221’]) #会提取出全部相应的行表头和对应列表的数据

print(df1.loc[‘20200221’, [‘a’, ‘c’]]) #会提取出部分对应的行表头和对应列表的数据
print(df1.loc[:, [‘a’, ‘b’]]) #提取出所有行,仅ab两列的对应数据

#通过位置选择数据
print(df1.iloc[2]) #输出第二行的数据
print(df1.iloc[1:3, 2:4]) #输出第一到二行中3-4列的数据
print(df1.iloc[[1, 2, 4], [1, 3]]) #提取出不连续的行和列

#混合标签位置选择
print(df1.ix[2:4, [‘a’, ‘b’]]) #这里会报出警告,因为.ix即将过期,功能可以被.loc和.iloc代替
print(df1.a > 6) #可以判断某一行或者某一列是否大于等于(符合筛选的条件)
print(df1 > 7) #或者判断列表的全部数据是否满足某一条件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值