pandas——DataFrame基础知识

查看Dataframe

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df=pd.read_excel("D:\\shujufenxi\\jinrong.xls")
df.head()##读取前五行数据
    指标  2015年   2016年   2017年
0   资金来源总计  1541204 1759952 1931934
1   一、各项存款  1357022 1505864 1641044
2   (一)境内存款 1345783 1497169 1630577
3   1.住户存款  546078  597751  643768
4   (1)活期存款 202869  231630  248239
In [3]:
df.tail(5)##去后面五行数据
指标  20152016201736  二、债权投资  197636  247604  294382
37  三、股权及其他投资   134326  220820  217589
38  四、黄金占款  2330    2542    2542
39  五、外汇买卖  265859  219425  214788
40  六、在国际金融机构资产 1513    3521    1313

二维数据的索引、列名和数据

df.columns#列名索引
##Index(['指标', '2015年', '2016年', '2017年'], dtype='object')
df.index
##RangeIndex(start=0, stop=41, step=1)##行名变化幅度
df.describe()##描述性统计
##2015年 2016年 2017年
count   4.100000e+01    4.100000e+01    4.100000e+01
mean    3.209699e+05    3.640636e+05    4.020533e+05
std 4.387051e+05    4.937579e+05    5.424745e+05
min 8.230000e+02    1.743000e+03    0.000000e+00
25% 3.445300e+04    3.693500e+04    4.399900e+04
50% 1.745860e+05    2.194250e+05    2.378880e+05
75% 3.432090e+05    3.661210e+05    4.050450e+05
max 1.541204e+06    1.759952e+06    1.931934e+06

Dataframe数据表排序

df.sort_index(axis=1ascending=False)##对列标签进行排序
df.sort_index(axis=0ascending=True)##对行标签进行排序(排序时默认升序,调节ascending参数)
df.sort_index(by=“2015年”)##对列2015年的数据进行排序
df.sort_values(by=['2015年','2016年'])##通过多个索引进行排序

数据选择

df["2015年”]
0     1541204
1     1357022
2     1345783
3      546078
4      202869
5      343209
6      430247
7      174586
8      255661
9      241832
10      34453
11     207379
12     127625
13      11239
14      10062
15      63217
16        823
17     110081
18    1541204
19     939540
20     936387
21     270214
22      89006
23      41008
24      47998
25     181208
26     148512
27      32696
28     657633
29     253371
30     344182
31      45756
32      12398
33       1927
34       8539
35       3153
36     197636
37     134326
38       2330
39     265859
40       1513
Name: 2015年, dtype: int64
In [ ]:
##
df[0:3]##使用切片选择0至2行,左闭右开
df.loc[["2016年"],["资金来源总计"]]#同时指定多行与多列进行选择
df.iloc[0:3,0:4]#查询前三行,前四列数据
df.iloc[[0,1,2],[2,3]]#查询指定行,指定列的数据
## 2016年 2017年
0   1759952 1931934
1   1505864 1641044
2   1497169 1630577
df.iloc[0,1]#查询第0行第1列的数据值
df.iloc[2,1]#查询第2行第2列的数据值
df.loc[:,["2015年","2016年"]]
df[df["2017年"],isin([1000,10000])#表示2017年这列,数据值为1000,10000
df[df["2016年"]>1000000]#选取2016年列的数值大于1000000所在的行
#指标 2015年 2016年 2017年
0   资金来源总计  1541204 1759952 1931934
1   一、各项存款  1357022 1505864 1641044
2   (一)境内存款 1345783 1497169 1630577
18  资金运用总计  1541204 1759952 1931934
19  一、各项贷款  939540  1066040 1201321
20  (一)境内贷款 936387  1061667 1196900

数据修改

data.replace(1,5)#把所有1替换为5
data.replace([2,5],[3,4])#把所有2替换为3,5替换为4
data.replace({1:5,"one":ONE})#运用字典进行对应替换
df.iat[0,3]=3#修改指定行,列的数据值
df
# 指标 2015年 2016年 2017年
0   资金来源总计  1541204 1759952 3
1   一、各项存款  1357022 1505864 1641044
2   (一)境内存款 1345783 1497169 1630577
3   1.住户存款  546078  597751  643768
df["2015年"]=-df["2015年"]#对指定的数列取相反数
df

pandas——DataFrame基础知识_第1张图片

你可能感兴趣的:(pandas——DataFrame基础知识)