python笔记第十三章之pandas模块

import numpy as np
import pandas as pd#numpd升级版有行列标签
s=pd.Series([1,3,6,np.nan,44,1])
print(s)
'''
0     1.0
1     3.0
2     6.0
3     NaN
4    44.0
5     1.0
dtype: float64
'''
dates=pd.date_range('20160101',periods=6)
print(dates)
'''
DatetimeIndex([
'2016-01-01', 
'2016-01-02', 
'2016-01-03', 
'2016-01-04',
'2016-01-05', 
'2016-01-06'],
dtype='datetime64[ns]',
freq='D')
'''
df=pd.DataFrame(np.random.randn(6,4),index=dates,columns=['a','b','c','d'])
print(df)#注意下面的行列标签,默认是0123……
'''                a         b         c         d
2016-01-01 -0.346525  1.320273  1.264326  0.310309
2016-01-02 -0.803533  0.834628  0.242953  0.617996
2016-01-03 -1.056487 -0.542874  1.257013 -0.739535
2016-01-04  0.248479  0.620812 -0.485491  0.132013
2016-01-05 -1.196680 -0.024697  1.959581 -0.392433
2016-01-06 -0.705661  1.524657 -0.125209  0.432786
'''
df2=pd.DataFrame({'a':1.,'b':[2,3]})#可用字典创建,键是属性名
print(df2)#'a':1应写成'a':[1.,1.]比较好,此处写得简洁了
print(df2.dtypes)
'''
a    float64
b      int64
dtype: object\
'''
print(df2.sort_index(axis=1,ascending=False))
'''按列属性排序,且非升序,所以下面是b a
   b    a
0  2  1.0
1  3  1.0
'''
import numpy as np
import pandas as pd#numpd升级版有行列标签
dates = pd.date_range('20130101', periods=6)
df = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates, columns=['A','B','C','D'])
print(df.loc[:,['A','B']])#用属性名输出
print(df.iloc[3:5,1:3])#用下标输出
print(df.ix[:3,['A','C']])#混合输出
"""          A   B
2013-01-01   0   1
2013-01-02   4   5
2013-01-03   8   9
2013-01-04  12  13
2013-01-05  16  17
2013-01-06  20  21
             B   C
2013-01-04  13  14
2013-01-05  17  18
            A   C
2013-01-01  0   2
2013-01-02  4   6
2013-01-03  8  10
"""
df.B[df.A>4]=0#把A列中值大于0的行的B属性改为0
df.loc['20130101','D']=2222#改对应值为2222
df.loc['20130101','C']=np.nan#改对应值为空
print(df)
'''          A  B     C     D
2013-01-01   0  1   NaN  2222
2013-01-02   4  5   6.0     7
2013-01-03   8  0  10.0    11
2013-01-04  12  0  14.0    15
2013-01-05  16  0  18.0    19
2013-01-06  20  0  22.0    23
'''
import numpy as np
import pandas as pd#numpd升级版有行列标签
dates = pd.date_range('20130101', periods=6)
df = pd.DataFrame(np.arange(24).reshape((6,
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值