Pandas基础命令速查清单

本文翻译整理自Pandas Cheat Sheet - Python for Data Science,结合K-Lab的工具属性,添加了具体的内容将速查清单里面的代码实践了一遍。

目录

缩写解释 & 库的导入

数据的导入

数据的导出

创建测试对象

数据的查看与检查

数据的选取

数据的清洗

数据的过滤(filter),排序(sort)和分组(groupby)

数据的连接(join)与组合(combine)

数据的统计


速查表内容概要

点击右上角的Fork按钮上手实践,即可点击标题实现内容跳转

  • [缩写解释 & 库的导入]
  • [数据的导入]
  • [数据的导出]
  • [创建测试对象]
  • [数据的查看与检查]
  • [数据的选取]
  • [数据的清洗]
  • [数据的过滤(filter),排序(sort)和分组(groupby)]
  • [数据的连接(join)与组合(combine)]
  • [数据的统计]

缩写解释 & 库的导入

df --- 任意的pandas DataFrame(数据框)对象
s --- 任意的pandas Series(数组)对象
pandasnumpy是用Python做数据分析最基础且最核心的库

import pandas as pd # 导入pandas库并简写为pd
import numpy as np # 导入numpy库并简写为np

数据的导入

pd.read_csv(filename) # 导入csv格式文件中的数据
pd.read_table(filename) # 导入有分隔符的文本 (如TSV) 中的数据
pd.read_excel(filename) # 导入Excel格式文件中的数据
pd.read_sql(query, connection_object) # 导入SQL数据表/数据库中的数据
pd.read_json(json_string) # 导入JSON格式的字符,URL地址或者文件中的数据
pd.read_html(url) # 导入经过解析的URL地址中包含的数据框 (DataFrame) 数据
pd.read_clipboard() # 导入系统粘贴板里面的数据
pd.DataFrame(dict)  # 导入Python字典 (dict) 里面的数据,其中key是数据框的表头,value是数据框的内容。

数据的导出

df.to_csv(filename) # 将数据框 (DataFrame)中的数据导入csv格式的文件中
df.to_excel(filename) # 将数据框 (DataFrame)中的数据导入Excel格式的文件中
df.to_sql(table_name,connection_object) # 将数据框 (DataFrame)中的数据导入SQL数据表/数据库中
df.to_json(filename) # 将数据框 (DataFrame)中的数据导入JSON格式的文件中

创建测试对象

pd.DataFrame(np.random.rand(10,5)) # 创建一个5列10行的由随机浮点数组成的数据框 DataFrame
pd.DataFrame(np.random.rand(10,5))
 01234
00.6477360.3726280.2558640.8535420.613267
10.0643640.1563400.5750210.5619110.479901
20.0364730.8768190.2553250.3932400.543039
30.3574890.0065780.0939660.5312940.029009
40.5505820.5046000.2735460.0116930.052523
50.7215630.1706890.7021630.4478830.905983
60.8397260.9359970.3431330.3569570.377116
70.9318940.0266840.7191480.9114250.676187
80.1156190.1148940.1306960.3215980.170082
90.1946490.5261410.9654420.2754330.880765
pd.Series(my_list) # 从一个可迭代的对象 my_list 中创建一个数据组
my_list = ['Kesci',100,'欢迎来到科赛网']
pd.Series(my_list)
0      Kesci
1        100
2    欢迎来到科赛网
dtype: object
df.index = pd.date_range('2017/1/1', periods=df.shape[0]) # 添加一个日期索引 index
df = pd.DataFrame(np.random.rand(10,5))
df.index = pd.date_range('2017/1/1', periods=df.shape[0])
df
 01234
2017-01-010.2485150.6478890.1113460.5404340.159914
2017-01-020.4450730.3298430.8236780.7374380.707598
2017-01-030.5265430.8768260.7179860.2719200.719657
2017-01-040.4712560.6576470.9734840.5989970.249301
2017-01-050.9584650.4743310.0040780.8423430.819295
2017-01-060.2713080.2719880.4347760.4496520.369188
2017-01-070.9895730.9284280.4524360.0585900.732283
2017-01-080.4353280.7302140.9094000.6834130.186820
2017-01-090.8974140.6875250.1229370.0181020.440427
2017-01-100.7438210.1346020.2103260.8771570.815462

数据的查看与检查

df.head(n)  # 查看数据框的前n行
df = pd.DataFrame(np.random.rand(10,5))
df.head(3)
 01234
00.7058840.8458130.7705850.4810490.381055
10.7333090.5423630.2643340.2542830.859442
20.4979770.4748980.8060730.3844120.242989
df.tail(n) # 查看数据框的最后n行
df = pd.DataFrame(np.random.rand(10,5))
df.tail(3)
 01234
70.6172890.0098010.2201550.9927430.944472
80.2611410.9409250.0633940.0521040.517853
90.6345410.8974830.7484530.8058610.344938
df.shape # 查看数据框的行数与列数
df = pd.DataFrame(np.random.rand(10,5))
df.shape
(10, 5)
df.info() # 查看数据框 (DataFrame) 的索引、数据类型及内存信息
df = pd.DataFrame(np.random.rand(10,5))
df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 10 entries, 0 to 9
Data columns (total 5 columns):
0    10 non-null float64
1    10 non-null float64
2    10 non-null float64
3    10 non-null float64
4    10 non-null float64
dtypes: float64(5)
memory usage: 480.0 bytes
df.describe() # 对于数据类型为数值型的列,查询其描述性统计的内容
df.describe()
 01234
count10.00000010.00000010.00000010.00000010.000000
mean0.4106310.4975850.5062000.3229600.603119
std0.2803300.3225730.2547800.2602990.256370
min0.0437310.0317420.0706680.0448220.143786
25%0.2406610.2116250.4168270.1452980.422969
50%0.3462970.5446970.4796480.2173590.635974
75%0.4931050.6690440.5573530.4681190.782573
max0.9375830.9455730.9873280.8831570.992891
s.value_counts(dropna=False) # 查询每个独特数据值出现次数统计
s = pd.Series([1,2,3,3,4,np.nan,5,5,5,6,7])
s.value_counts(dropna=False)
 5.0    3
 3.0    2
 7.0    1
 6.0    1
NaN     1
 4.0    1
 2.0    1
 1.0    1
dtype: int64
df.apply(pd.Series.value_counts) # 查询数据框 (Data Frame) 中每个列的独特数据值出现次数统计

数据的选取

df[col] # 以数组 Series 的形式返回选取的列
df = pd.DataFrame(np.random.rand(5,5),columns=list('ABCDE'))
df['C']
0    0.720965
1    0.360155
2    0.474067
3    0.116206
4    0.774503
Name: C, dtype: float64
df[[col1, col2]] # 以新的数据框(DataFrame)的形式返回选取的列
df = pd.DataFrame(np.random.rand(5,5),columns=list('ABCDE'))
df[['B','E']]
 BE
00.2059120.333909
10.4756200.540206
20.1440410.065117
30.6369700.406317
40.4515410.944245
s.iloc[0] # 按照位置选取
s = pd.Series(np.array(['I','Love','Data']))
s.iloc[0]
'I'
s.loc['index_one'] # 按照索引选取
s = pd.Series(np.array(['I','Love','Data']))
s.loc[1]
'Love'
df.iloc[0,:] # 选取第一行
df = pd.DataFrame(np.random.rand(5,5),columns=list('ABCDE'))
df.iloc[0,:]
A    0.234156
B    0.513754
C    0.593067
D    0.856575
E    0.291528
Name: 0, dtype: float64
df.iloc[0,0] # 选取第一行的第一个元素
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.iloc[0,0]
0.91525996455410763

数据的清洗

df.columns = ['a','b'] # 重命名数据框的列名称
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
df.columns = ['a','b','c']
df
 abc
01.0NaNfoo
1NaN4.0foo
22.0NaNfoo
33.05.0foo
46.09.0foo
5NaNNaNfoo
pd.isnull() # 检查数据中空值出现的情况,并返回一个由布尔值(True,Fale)组成的列
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
pd.isnull(df)
 ABC
0FalseTrueFalse
1TrueFalseFalse
2FalseTrueFalse
3FalseFalseFalse
4FalseFalseFalse
5TrueTrueFalse
pd.notnull() # 检查数据中非空值出现的情况,并返回一个由布尔值(True,False)组成的列
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
pd.notnull(df)
 ABC
0TrueFalseTrue
1FalseTrueTrue
2TrueFalseTrue
3TrueTrueTrue
4TrueTrueTrue
5FalseFalseTrue
df.dropna() # 移除数据框 DataFrame 中包含空值的行
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
df.dropna()
 ABC
33.05.0foo
46.09.0foo
df.dropna(axis=1) # 移除数据框 DataFrame 中包含空值的列
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
df.dropna(axis=1)
 C
0foo
1foo
2foo
3foo
4foo
5foo
df.dropna(axis=0,thresh=n)
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
test = df.dropna(axis=1,thresh=1)
test
 ABC
01.0NaNfoo
1NaN4.0foo
22.0NaNfoo
33.05.0foo
46.09.0foo
5NaNNaNfoo
df.fillna(x) # 将数据框 DataFrame 中的所有空值替换为 x
df = pd.DataFrame({'A':np.array([1,np.nan,2,3,6,np.nan]),
                 'B':np.array([np.nan,4,np.nan,5,9,np.nan]),
                  'C':'foo'})
df.fillna('Test')
 ABC
01Testfoo
1Test4foo
22Testfoo
335foo
469foo
5TestTestfoo

s.fillna(s.mean()) -> 将所有空值替换为平均值

s = pd.Series([1,3,5,np.nan,7,9,9])
s.fillna(s.mean())
0    1.000000
1    3.000000
2    5.000000
3    5.666667
4    7.000000
5    9.000000
6    9.000000
dtype: float64
s.astype(float) # 将数组(Series)的格式转化为浮点数
s = pd.Series([1,3,5,np.nan,7,9,9])
s.astype(float)
0    1.0
1    3.0
2    5.0
3    NaN
4    7.0
5    9.0
6    9.0
dtype: float64
s.replace(1,'one') # 将数组(Series)中的所有1替换为'one'
s = pd.Series([1,3,5,np.nan,7,9,9])
s.replace(1,'one')
0    one
1      3
2      5
3    NaN
4      7
5      9
6      9
dtype: object
s.replace([1,3],['one','three']) # 将数组(Series)中所有的1替换为'one', 所有的3替换为'three'
s = pd.Series([1,3,5,np.nan,7,9,9])
s.replace([1,3],['one','three'])
0      one
1    three
2        5
3      NaN
4        7
5        9
6        9
dtype: object
df.rename(columns=lambda x: x + 2) # 将全体列重命名
df = pd.DataFrame(np.random.rand(4,4))
df.rename(columns=lambda x: x+ 2)
 2345
00.7535880.1379840.0220130.900072
10.9470730.8151820.7697080.729688
20.3348150.2043150.7077940.437704
30.4672120.7383600.8534630.529946
df.rename(columns={'old_name': 'new_ name'}) # 将选择的列重命名
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.rename(columns={'A':'newA','C':'newC'})
 newABnewCDE
00.1690720.6945630.0693130.6375600.475181
10.9102710.8000670.6764480.9347670.025608
20.8251860.4515450.1354210.6353030.419758
30.4019790.5103040.0149010.2092110.121889
40.5792820.0019470.0365190.7504150.453078
50.8962130.5575140.0281470.5274710.575772
60.4432220.0954590.3195820.9120690.781455
70.0679230.5904700.6029990.5073580.703022
80.3014910.6826290.2831030.5657540.089268
90.3996710.9254160.0205780.2780000.591522
df.set_index('column_one') # 改变索引
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.set_index('B')
 ACDE
B    
0.3117420.9720690.5579770.1142670.795128
0.9316440.7254250.0821300.9937640.136923
0.2063820.9806470.9470410.0388410.879139
0.1578010.4022330.2491510.7241300.108238
0.3142380.3412210.5121800.2188820.046379
0.0290400.4706190.6667840.0366550.823498
0.8439280.7794370.9269120.1892130.624111
0.2827730.9936810.0484830.1359340.576662
0.7596000.2355130.3591390.4882550.669043
0.0885520.8932690.2772960.8895230.398392
df.rename(index = lambda x: x+ 1) # 改变全体索引
df = pd.DataFrame(np.random.rand(10,5))
df.rename(index = lambda x: x+ 1)
 01234
10.3865420.0319320.9632000.7903390.602533
20.0534920.6521740.8894650.4652960.843528
30.4118360.4607880.1103520.0832470.389855
40.3361560.8305220.5609910.6678960.233841
50.3079330.9952070.5066800.9578950.636461
60.7249750.8421180.1231390.2443570.803936
70.0591760.1177840.3301920.4187640.464144
80.1043230.2223670.9304140.6592320.562155
90.4840890.0240450.8798340.4922310.949636
100.2015830.2806580.3568040.8907060.236174

数据的过滤(filter),排序(sort)和分组(groupby)

df[df[col] > 0.5] # 选取数据框df中对应行的数值大于0.5的全部列
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df[df['A'] > 0.5]
 ABCDE
00.5348860.8635460.2367180.3267660.415460
20.9539310.0701980.4837490.9225280.295505
80.8801750.0568110.5204990.5331520.548145
df[(df[col] > 0.5) & (df[col] < 0.7)] # 选取数据框df中对应行的数值大于0.5,并且小于0.7的全部列
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df[(df['C'] > 0.5) & (df['D'] < 0.7)]
 ABCDE
20.9531120.1745170.6453000.3082160.171177
60.8530870.8630790.7018230.3540190.311754
df.sort_values(col1) # 按照数据框的列col1升序(ascending)的方式对数据框df做排序
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.sort_values('E')
 ABCDE
30.0240960.6238420.7759490.8283430.317729
60.2200550.3816140.4636760.7626440.391758
40.5894110.7274390.0645280.3195210.413518
10.8784900.2293010.6995060.7268790.464106
80.4381010.9706490.0502560.6974400.499057
90.5661000.5587980.7232530.2542440.524486
70.6136030.9331090.6770360.8081600.544953
50.0793260.7116730.2664340.9106280.816783
20.1321140.1453950.9084360.5212710.889645
00.4326770.2168370.2035320.0932140.977671
df.sort_values(col2,ascending=False) # 按照数据框的列col2降序(descending)的方式对数据框df做排序
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.sort_values('A',ascending=False)
 ABCDE
90.9771720.9306070.8892850.4750320.031715
00.8645110.2299900.6786120.0424910.148123
20.6947470.5808910.8175240.3924170.055003
60.6843270.8020280.8620430.2418380.800401
70.6123240.0994450.7141200.2150540.280343
80.4414340.3155530.5647620.8001430.330030
10.4387340.1611090.6107500.6473300.792404
40.3658800.7107680.3443200.9987570.979497
30.2025110.7697280.5750570.5113840.696753
50.0295270.5601140.2247870.0862910.318322
df.sort_values([col1,col2],ascending=[True,False]) # 按照数据框的列col1升序,col2降序的方式对数据框df做排序
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.sort_values(['A','E'],ascending=[True,False])
 ABCDE
60.0758630.6969800.6489450.3369770.113122
20.1993160.6320630.7873580.1331750.060568
50.2420810.8185500.6184390.2157610.924459
70.2612370.4007250.6592240.5557460.132572
00.3905400.3584320.7540280.1944030.889624
80.4104810.4638110.3430210.7363400.291121
40.5787050.5447110.8817070.3965930.414465
30.6005410.4592470.5913030.0274640.496864
90.7200290.4199210.7402250.9043910.226958
10.7779550.9922900.1444950.6002070.647018
df.groupby(col) # 按照某列对数据框df做分组
df = pd.DataFrame({'A':np.array(['foo','foo','foo','foo','bar','bar']),
      'B':np.array(['one','one','two','two','three','three']),
     'C':np.array(['small','medium','large','large','small','small']),
     'D':np.array([1,2,2,3,3,5])})

df.groupby('A').count()
 BCD
A   
bar222
foo444
df.groupby([col1,col2]) # 按照列col1和col2对数据框df做分组
df = pd.DataFrame({'A':np.array(['foo','foo','foo','foo','bar','bar']),
      'B':np.array(['one','one','two','two','three','three']),
     'C':np.array(['small','medium','large','large','small','small']),
     'D':np.array([1,2,2,3,3,5])})

df.groupby(['B','C']).sum()
  D
BC 
onemedium2
small1
threesmall8
twolarge5
df.groupby(col1)[col2].mean() # 按照列col1对数据框df做分组处理后,返回对应的col2的平均值
df = pd.DataFrame({'A':np.array(['foo','foo','foo','foo','bar','bar']),
      'B':np.array(['one','one','two','two','three','three']),
     'C':np.array(['small','medium','large','large','small','small']),
     'D':np.array([1,2,2,3,3,5])})
df.groupby('B')['D'].mean()
B
one      1.5
three    4.0
two      2.5
Name: D, dtype: float64
pythyon
df.pivot_table(index=col1,values=[col2,col3],aggfunc=mean) # 做透视表,索引为col1,针对的数值列为col2和col3,分组函数为平均值
df = pd.DataFrame({'A':np.array(['foo','foo','foo','foo','bar','bar']),
      'B':np.array(['one','one','two','two','three','three']),
     'C':np.array(['small','medium','large','large','small','small']),
     'D':np.array([1,2,2,3,3,5])})

df.pivot_table(df,index=['A','B'],
               columns=['C'],aggfunc=np.sum)
  D
 Clargemediumsmall
AB   
barthreeNaNNaN8.0
foooneNaN2.01.0
two5.0NaNNaN
df.groupby(col1).agg(np.mean)
df = pd.DataFrame({'A':np.array(['foo','foo','foo','foo','bar','bar']),
      'B':np.array(['one','one','two','two','three','three']),
     'C':np.array(['small','medium','large','large','small','small']),
     'D':np.array([1,2,2,3,3,5])})
df.groupby('A').agg(np.mean)
 D
A 
bar4
foo2
df.apply(np.mean) # 对数据框df的每一列求平均值
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.apply(np.mean)
A    0.388075
B    0.539564
C    0.607983
D    0.518634
E    0.482960
dtype: float64
df.apply(np.max,axis=1) # 对数据框df的每一行求最大值
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.apply(np.max,axis=1)
0    0.904163
1    0.804519
2    0.924102
3    0.761781
4    0.952084
5    0.923679
6    0.796320
7    0.582907
8    0.761310
9    0.893564
dtype: float64

数据的连接(join)与组合(combine)

df1.append(df2) # 在数据框df2的末尾添加数据框df1,其中df1和df2的列数应该相等
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']},
                   index=[0, 1, 2, 3])
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
                    'B': ['B4', 'B5', 'B6', 'B7'],
                    'C': ['C4', 'C5', 'C6', 'C7'],
                    'D': ['D4', 'D5', 'D6', 'D7']},
                   index=[4, 5, 6, 7])

df1.append(df2)
 ABCD
0A0B0C0D0
1A1B1C1D1
2A2B2C2D2
3A3B3C3D3
4A4B4C4D4
5A5B5C5D5
6A6B6C6D6
7A7B7C7D7
pd.concat([df1, df2],axis=1) # 在数据框df1的列最后添加数据框df2,其中df1和df2的行数应该相等
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']},
                   index=[0, 1, 2, 3])
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
                    'B': ['B4', 'B5', 'B6', 'B7'],
                    'C': ['C4', 'C5', 'C6', 'C7'],
                    'D': ['D4', 'D5', 'D6', 'D7']},
                   index=[4, 5, 6, 7])
pd.concat([df1,df2],axis=1)
 ABCDABCD
0A0B0C0D0NaNNaNNaNNaN
1A1B1C1D1NaNNaNNaNNaN
2A2B2C2D2NaNNaNNaNNaN
3A3B3C3D3NaNNaNNaNNaN
4NaNNaNNaNNaNA4B4C4D4
5NaNNaNNaNNaNA5B5C5D5
6NaNNaNNaNNaNA6B6C6D6
7NaNNaNNaNNaNA7B7C7D7
df1.join(df2,on=col1,how='inner') # 对数据框df1和df2做内连接,其中连接的列为col1
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],           
                     'B': ['B0', 'B1', 'B2', 'B3'],
                     'key': ['K0', 'K1', 'K0', 'K1']})
   

df2 = pd.DataFrame({'C': ['C0', 'C1'],
                      'D': ['D0', 'D1']},
                     index=['K0', 'K1'])
   

df1.join(df2, on='key')
 ABkeyCD
0A0B0K0C0D0
1A1B1K1C1D1
2A2B2K0C0D0
3A3B3K1C1D1

数据的统计

df.describe() # 得到数据框df每一列的描述性统计
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.describe()
 ABCDE
count10.00000010.00000010.00000010.00000010.000000
mean0.3986480.4516990.4434720.7394780.412954
std0.3306050.2215860.3030840.3087980.262148
min0.0044570.1886890.0796970.1135620.052935
25%0.0881770.2703550.2056630.7150050.205685
50%0.3155330.4572290.3321480.8858720.400232
75%0.7497160.4972080.7379000.9486510.634670
max0.7829560.8256710.8510650.9629220.815447
df.mean() # 得到数据框df中每一列的平均值
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.mean()
A    0.395643
B    0.528812
C    0.692011
D    0.446750
E    0.544759
dtype: float64
df.corr() # 得到数据框df中每一列与其他列的相关系数
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.corr()
 ABCDE
A1.000000-0.634931-0.354824-0.3541310.170957
B-0.6349311.0000000.225222-0.338124-0.043300
C-0.3548240.2252221.0000000.0982850.297133
D-0.354131-0.3381240.0982851.000000-0.324209
E0.170957-0.0433000.297133-0.3242091.000000
df.count() # 得到数据框df中每一列的非空值个数
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.count()
A    10
B    10
C    10
D    10
E    10
dtype: int64
df.max() # 得到数据框df中每一列的最大值
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.max()
A    0.933848
B    0.730197
C    0.921751
D    0.715280
E    0.940010
dtype: float64
df.min() # 得到数据框df中每一列的最小值
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.min()
A    0.107516
B    0.001635
C    0.024502
D    0.092810
E    0.019898
dtype: float64
df.median() # 得到数据框df中每一列的中位数
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.median()
A    0.497591
B    0.359854
C    0.661607
D    0.342418
E    0.588468
dtype: float64
df.std() # 得到数据框df中每一列的标准差
df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))
df.std()
A    0.231075
B    0.286691
C    0.276511
D    0.304167
E    0.272570
dtype: float64
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值