key1 key2 key3
a 4 1.0 1
b 5 2.0 2
c 3 NaN 3
d 1 4.0 j
e 2 5.0 k
int64 <class 'pandas.core.series.Series'> float64 object
-------------
key1 3.0
key2 3.0
dtype: float64 <class 'pandas.core.series.Series'>
单独统计一列: 3.0
-----
a 2.5
b 3.5
c 3.0
d 2.5
e 3.5
dtype: float64
-----
key1 3.0
key2 NaN
dtype: float64
-----
0 a
1 s
2 d
3 v
4 a
5 s
6 d
7 c
8 f
9 g
10 g
dtype: object
-----------
['a' 's' 'd' 'v' 'c' 'f' 'g'] <class 'numpy.ndarray'>
-----------
0 a
1 s
2 d
3 v
4 c
5 f
6 g
dtype: object
-----------
['a' 'c' 'd' 'f' 'g' 's' 'v']
# 通过str访问 Series即DF的一列(行)/index(colunms) of str而非单个str,且自动排除丢失/ NA值
s = pd.Series(['A','b','C','bbhello','123',np.nan,'hj'])
df = pd.DataFrame({'key1':list('abcdef'),'key2':['hee','fv','w','hija','123',np.nan]})print(s)print(df)print('-----')print(s.str.count('b'))print(df.loc[1].str.upper())print('-----')# 直接通过.str调用字符串方法# 可以对Series、Dataframe使用# 自动过滤NaN值
df.columns=df.columns.str.upper()print(df)# df.columns是一个Index对象,也可使用.str
0 A
1 b
2 C
3 bbhello
4 123
5 NaN
6 hj
dtype: object
key1 key2
0 a hee
1 b fv
2 c w
3 d hija
4 e 123
5 f NaN
-----
0 0.0
1 1.0
2 0.0
3 2.0
4 0.0
5 NaN
6 0.0
dtype: float64
key1 B
key2 FV
Name: 1, dtype: object
-----
KEY1 KEY2
0 a hee
1 b fv
2 c w
3 d hija
4 e 123
5 f NaN
# 字符串常用方法(4) - split、rsplit
s = pd.Series(['a,b,c','1,2,3',['a,,,c'],np.nan])print(s.str.split(','))print('-----')# 类似字符串的split,只不过操作对象是series中全部str 而非一个str#注意split只对list对象有用 若series的元素【’a,,,,c‘】本来就是list 则split无用print(s.str.split(',')[0])print('-----')# 直接索引得到series的第一个元素listprint(s.str.split(',').str[0])print(s.str.split(',').str.get(1))print('-----')# 可以使用get或[]符号访问拆分列表中的元素,获得series所有元素的第0/1个子元素形成的新seriesprint(s.str.split(',',expand=True))print(s.str.split(',', expand=True, n =1))print(s.str.rsplit(',', expand=True, n =1))print('-----')# 可以使用expand可以轻松扩展此操作以返回DataFrame# n参数限制分割数 n=1分两列# rsplit类似于split,反向工作,即从字符串的末尾到字符串的开头
df = pd.DataFrame({'key1':['a,b,c','1,2,3',[':,., ']],'key2':['a-b-c','1-2-3',[':-.- ']]})print(df)print('-----')print(df['key2'].str.split('-'))# Dataframe的一列使用split
0 [a, b, c]
1 [1, 2, 3]
2 NaN
3 NaN
dtype: object
-----
['a', 'b', 'c']
-----
0 a
1 1
2 NaN
3 NaN
dtype: object
0 b
1 2
2 NaN
3 NaN
dtype: object
-----
0 1 2
0 a b c
1 1 2 3
2 NaN NaN NaN
3 NaN NaN NaN
0 1
0 a b,c
1 1 2,3
2 NaN NaN
3 NaN NaN
0 1
0 a,b c
1 1,2 3
2 NaN NaN
3 NaN NaN
-----
key1 key2
0 a,b,c a-b-c
1 1,2,3 1-2-3
2 [:,., ] [:-.- ]
-----
0 [a, b, c]
1 [1, 2, 3]
2 NaN
Name: key2, dtype: object
# 字符串索引
s = pd.Series(['A','b','C','bbhello','123',np.nan,'hj'])
df = pd.DataFrame({'key1':list('abcdef'),'key2':['hee','fv','w','hija','123',np.nan]})print(s.str[0])# 取第一个字符串形成新seriesprint(s.str[:2])# 取前两个字符串形成新seriesprint(df['key2'].str[0])#提取key2的第一个字符形成新的df一列替换原来的df
0 A
1 b
2 C
3 b
4 1
5 NaN
6 h
dtype: object
0 A
1 b
2 C
3 bb
4 12
5 NaN
6 hj
dtype: object
0 h
1 f
2 w
3 h
4 1
5 NaN
Name: key2, dtype: object
#作业answer
df=pd.DataFrame({'gender':[' M ',' M ',' F ',' M ',' F '],'name':['jack','tom','marry','zack','heheda'],'score':['90-90-90','89-89-89','90-90-90','78-78-78','60-60-60']})print(df)print('--------')
df['name']=df['name'].str.capitalize()print(df)print('--------')
df['gender']=df['gender'].str.strip()print(df)print('--------')#重点 弄懂两层str的含义#df['math']=df['score'].str.split('-').str[0]#df['english']=df['score'].str.split('-').str[1]#df['art']=df['score'].str.split('-').str[2]'''
df['math'] = df['score'].str.split('-', expand=True)[0]
df['english'] = df['score'].str.split('-', expand=True)[0]
df['art'] = df['score'].str.split('-', expand=True)[0]
第二种写法 一层一层拆并 expand
'''
df[['math','english','art']]=df['score'].str.split('-', expand=True)#第三种写法 一次拆完并expanddel df['score']print(df)
gender name score
0 M jack 90-90-90
1 M tom 89-89-89
2 F marry 90-90-90
3 M zack 78-78-78
4 F heheda 60-60-60
--------
gender name score
0 M Jack 90-90-90
1 M Tom 89-89-89
2 F Marry 90-90-90
3 M Zack 78-78-78
4 F Heheda 60-60-60
--------
gender name score
0 M Jack 90-90-90
1 M Tom 89-89-89
2 F Marry 90-90-90
3 M Zack 78-78-78
4 F Heheda 60-60-60
--------
gender name math english art
0 M Jack 90 90 90
1 M Tom 89 89 89
2 F Marry 90 90 90
3 M Zack 78 78 78
4 F Heheda 60 60 60
#总结2.15'''
1可以对A.df[] df.loc[]行/列(本质series);B.series;C.df.index or columns进行str的操作
2注意str操作是对series一竖列的string进行操作,而不是对一个str进行操作
3特别注意split方法
3.1 series.str.split[0] or series.str.get(0)
是获得新产生的series of list(split拆出)的第0个list
3.2 如果想获得series of list[0](单个string)
需要两层str series.str.split(此时为list)
3.3 series.str.split('-',expand=True,n=n0)将split的结果拆成n0+1列
注意作业三种写法
4注意str索引写法
series.str[:2] 得到series of string(原来string的前两个字母)
'''
"\n1可以对A.df[] df.loc[]行/列(本质series);B.series;C.df.index or columns进行str的操作\n2注意str操作是对series一竖列的string进行操作,而不是对一个str进行操作\n3特别注意split方法\n3.1 series.str.split[0] or series.str.get(0)\n是获得新产生的series of list(split拆出)的第0个list\n\n3.2 如果想获得series of list[0](单个string)\n需要两层str series.str.split(此时为list)\n\n3.3 series.str.split('-',expand=True,n=n0)将split的结果拆成n0+1列\n注意作业三种写法\n\n4注意str索引写法\nseries.str[:2] 得到series of string(原来string的前两个字母)\n \n\n"
lkey data1 rkey date2
0 b 0 b 1
1 b 1 b 1
2 b 6 b 1
3 a 2 a 0
4 a 4 a 0
5 a 5 a 0
------
key data1 date2
0 a 0 100
1 b 1 101
2 c 2 102
3 d 3 103
5 e 5 104
# 参数 sort
df1 = pd.DataFrame({'key':list('bbacaab'),'data1':[1,3,2,4,5,9,7]})
df2 = pd.DataFrame({'key':list('abd'),'date2':[11,2,33]})
x1 = pd.merge(df1,df2, on ='key', how ='outer')
x2 = pd.merge(df1,df2, on ='key', sort=True, how ='outer')print(x1)print(x2)print('------')# sort:按照字典顺序通过 连接键 对结果DataFrame进行排序。默认为False,设置为False会大幅提高性能#所以很少用sort 往往是merge后再将df sort_valuesprint(x2.sort_values('data1'))# 也可直接用Dataframe的排序方法:sort_values,sort_index
key data1 date2
0 b 1.0 2.0
1 b 3.0 2.0
2 b 7.0 2.0
3 a 2.0 11.0
4 a 5.0 11.0
5 a 9.0 11.0
6 c 4.0 NaN
7 d NaN 33.0
key data1 date2
0 a 2.0 11.0
1 a 5.0 11.0
2 a 9.0 11.0
3 b 1.0 2.0
4 b 3.0 2.0
5 b 7.0 2.0
6 c 4.0 NaN
7 d NaN 33.0
------
key data1 date2
3 b 1.0 2.0
0 a 2.0 11.0
4 b 3.0 2.0
6 c 4.0 NaN
1 a 5.0 11.0
5 b 7.0 2.0
2 a 9.0 11.0
7 d NaN 33.0
# pd.join() → 直接通过索引链接
left = pd.DataFrame({'A':['A0','A1','A2'],'B':['B0','B1','B2']},
index=['K0','K1','K2'])
right = pd.DataFrame({'C':['C0','C2','C3'],'D':['D0','D2','D3']},
index=['K0','K2','K3'])print(left)print(right)print(left.join(right))print(left.join(right,how='outer'))print('---------')# 等价于:pd.merge(left, right, left_index=True, right_index=True, how='outer')
df1 = pd.DataFrame({'key':list('bbacaab'),'data1':[1,3,2,4,5,9,7]})
df2 = pd.DataFrame({'key':list('abd'),'date2':[11,2,33]})print(df1)print(df2)print(pd.merge(df1, df2, left_index=True, right_index=True))print(df1.join(df2['date2']))print('-----')# suffixes=('_name1', '_name2')更改新产生df 两个index 的_name 后缀名#_x _y默认
left = pd.DataFrame({'A':['A0','A1','A2','A3'],'B':['B0','B1','B2','B3'],'key':['K0','K1','K0','K1']})
right = pd.DataFrame({'C':['C0','C1'],'D':['D0','D1']},
index=['K0','K1'])print(left)print(right)print(left.join(right, on ='key'))#left.join()括号里是left的参数,所以on是left的‘key’,而right还是index# 等价于pd.merge(left, right, left_on='key', right_index=True, how='left', sort=False);
A B
K0 A0 B0
K1 A1 B1
K2 A2 B2
C D
K0 C0 D0
K2 C2 D2
K3 C3 D3
A B C D
K0 A0 B0 C0 D0
K1 A1 B1 NaN NaN
K2 A2 B2 C2 D2
A B C D
K0 A0 B0 C0 D0
K1 A1 B1 NaN NaN
K2 A2 B2 C2 D2
K3 NaN NaN C3 D3
---------
key data1
0 b 1
1 b 3
2 a 2
3 c 4
4 a 5
5 a 9
6 b 7
key date2
0 a 11
1 b 2
2 d 33
key_x data1 key_y date2
0 b 1 a 11
1 b 3 b 2
2 a 2 d 33
key data1 date2
0 b 1 11.0
1 b 3 2.0
2 a 2 33.0
3 c 4 NaN
4 a 5 NaN
5 a 9 NaN
6 b 7 NaN
-----
A B key
0 A0 B0 K0
1 A1 B1 K1
2 A2 B2 K0
3 A3 B3 K1
C D
K0 C0 D0
K1 C1 D1
A B key C D
0 A0 B0 K0 C0 D0
1 A1 B1 K1 C1 D1
2 A2 B2 K0 C0 D0
3 A3 B3 K1 C1 D1
df1:
key values1
0 a 0.864474
1 b 0.788860
2 c 0.385425
-----
df2:
key values2
0 b 0.068776
1 c 0.620308
2 d 0.882386
-----
df3:
key values1 values2
0 a 0.864474 NaN
1 b 0.788860 0.068776
2 c 0.385425 0.620308
3 d NaN 0.882386
df1:
lkey values1
0 a 0.250315
1 b 0.672982
2 c 0.248125
-----
df2:
rkey values2
0 b 0.115970
1 c 0.181128
2 d 0.314268
-----
df3:
lkey values1 rkey values2
0 a 0.250315 b 0.115970
1 b 0.672982 c 0.181128
2 c 0.248125 d 0.314268
0 1
1 2
2 3
0 2
1 3
2 4
dtype: int64
a 1
b 2
c 2
d 4
e 3
h 3
dtype: int64
------
0 1
a 1.0 NaN
b NaN 2.0
c 2.0 NaN
d NaN 4.0
e NaN 3.0
h 3.0 NaN
-----
C:\ProgramData\Anaconda3\lib\site-packages\ipykernel_launcher.py:13: FutureWarning: Sorting because non-concatenation axis is not aligned. A future version
of pandas will change to not sort by default.
To accept the future behavior, pass 'sort=False'.
To retain the current behavior and silence the warning, pass 'sort=True'.
del sys.path[0]
lkey values1
0 a 0.939059
1 b 0.885028
2 c 0.758734
-------↑df1
rkey values2
x b 0.343632
y c 0.082145
z d 0.436147
-------↑df2
lkey rkey values1 values2
0 a NaN 0.939059 NaN
1 b NaN 0.885028 NaN
2 c NaN 0.758734 NaN
x NaN b NaN 0.343632
y NaN c NaN 0.082145
z NaN d NaN 0.436147
-------↑df3
lkey values1 rkey values2
0 a 0.939059 NaN NaN
1 b 0.885028 NaN NaN
2 c 0.758734 NaN NaN
x NaN NaN b 0.343632
y NaN NaN c 0.082145
z NaN NaN d 0.436147
-------↑df4
C:\ProgramData\Anaconda3\lib\site-packages\ipykernel_launcher.py:7: FutureWarning: Sorting because non-concatenation axis is not aligned. A future version
of pandas will change to not sort by default.
To accept the future behavior, pass 'sort=False'.
To retain the current behavior and silence the warning, pass 'sort=True'.
import sys
a 1
b 2
c 3
dtype: int64
------
b 2
c 3
d 4
dtype: int64
------
0 1
a 1.0 NaN
b 2.0 2.0
c 3.0 3.0
d NaN 4.0
------
0 1
b 2 2
c 3 3
------
0 1
a 1.0 NaN
b 2.0 2.0
d NaN 4.0
C:\ProgramData\Anaconda3\lib\site-packages\ipykernel_launcher.py:8: FutureWarning: Sorting because non-concatenation axis is not aligned. A future version
of pandas will change to not sort by default.
To accept the future behavior, pass 'sort=False'.
To retain the current behavior and silence the warning, pass 'sort=True'.
one a 1
b 2
c 3
two b 2
c 3
d 4
dtype: int64 <class 'pandas.core.series.Series'>
MultiIndex(levels=[['one', 'two'], ['a', 'b', 'c', 'd']],
codes=[[0, 0, 0, 1, 1, 1], [0, 1, 2, 1, 2, 3]])
-----
one two
a 1.0 NaN
b 2.0 2.0
c 3.0 3.0
d NaN 4.0 <class 'pandas.core.frame.DataFrame'>
C:\ProgramData\Anaconda3\lib\site-packages\ipykernel_launcher.py:9: FutureWarning: Sorting because non-concatenation axis is not aligned. A future version
of pandas will change to not sort by default.
To accept the future behavior, pass 'sort=False'.
To retain the current behavior and silence the warning, pass 'sort=True'.
if __name__ == '__main__':
values1 values2
a 0.503692 0.986015
b 0.142672 0.176473
c 0.007865 0.222326
d 0.064909 0.328113
-------↑df1
values1 values2
e 0.385201 0.392069
f 0.318505 0.506359
g 0.395767 0.880248
h 0.061653 0.402304
-------↑df2
values1 values2
a 0.503692 0.986015
b 0.142672 0.176473
c 0.007865 0.222326
d 0.064909 0.328113
e 0.385201 0.392069
f 0.318505 0.506359
g 0.395767 0.880248
h 0.061653 0.402304
-------↑df3
创建df1为:
values1 values2
a 0.445917 0.289403
b NaN 0.013630
c NaN 0.676349
d 0.292880 0.862718
------
创建df2为:
values1 values2
a 0 1
b 2 3
c 4 5
d 6 7
------
df1修补后为:
values1 values2
a 0.445917 0.289403
b 2.000000 0.013630
c 4.000000 0.676349
d 0.292880 0.862718
------
key1 key2
0 a a
1 a a
2 3 b
3 4 b
4 5 c
-----
0 False
1 True
2 False
3 False
4 False
dtype: bool
-----
key1 key2
0 a a
2 3 b
3 4 b
4 5 c
-----
key1 key2
0 a a
2 3 b
3 4 b
4 5 c
-----
0 False
1 True
2 False
3 True
4 False
Name: key2, dtype: bool
-----
# 对series/df替换 .replace
s = pd.Series(list('ascaazsd'))print(s.replace('a',np.nan))#替换一组值print(s.replace(['a','s'],np.nan))#多个原值替换同一个目标值,可以把多个原值写成一个listprint(s.replace({'a':'hello world!','s':123}))#多个原值替换多个目标值可以把原目的对应关系写成dict
0 NaN
1 s
2 c
3 NaN
4 NaN
5 z
6 s
7 d
dtype: object
0 NaN
1 NaN
2 c
3 NaN
4 NaN
5 z
6 NaN
7 d
dtype: object
0 hello world!
1 123
2 c
3 hello world!
4 hello world!
5 z
6 123
7 d
dtype: object
'''
【课程2.19】 数据分组
分组统计 - groupby功能
① 根据某些条件将数据拆分成组
② 对每个组独立应用函数
③ 将结果合并到一个数据结构中
Dataframe在行(axis=0)或列(axis=1)上进行分组,将一个函数应用到各个分组并产生一个新值,然后函数执行结果被合并到最终的结果对象中。
df.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, **kwargs)
'''
A B C D
0 foo one -0.626564 1.105908
1 bar one -1.196017 0.550428
2 foo two 0.117546 1.342129
3 bar three -0.846058 -0.022835
4 foo two 1.196126 -0.640600
5 bar two 1.312649 0.241346
6 foo one 0.133678 -0.921084
7 foo three 0.493977 -0.775614
------
<pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000022C643D5908> <class 'pandas.core.groupby.generic.DataFrameGroupBy'>
------
C D
A
bar -0.243142 0.256313
foo 0.262953 0.022148
------
C D
A B
bar one -1.196017 0.550428
three -0.846058 -0.022835
two 1.312649 0.241346
foo one -0.246443 0.092412
three 0.493977 -0.775614
two 0.656836 0.350764
------
A
bar 0.256313
foo 0.022148
Name: D, dtype: float64
X Y
0 A 1
1 B 4
2 A 3
3 B 2
<pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000022C643CC048> <class 'pandas.core.groupby.generic.DataFrameGroupBy'>
-----
[('A', X Y
0 A 1
2 A 3), ('B', X Y
1 B 4
3 B 2)]
-----
A
-----
X Y
0 A 1
2 A 3
-----
B
-----
X Y
1 B 4
3 B 2
-----
print(df.groupby(['X']).get_group('A'),'\n')print(df.groupby(['X']).get_group('A'),'\n')#get_group('分类属性的某个值')可以获取分组后的子df
grouped=df.groupby(['X'])#grouped 是dfgroupby中间数据结构 即list of tuple tuple(属性值,子df)print(grouped.groups)print('-----')#groups方法可以将分类的结果转化为dict(属性值:该属性值对应的行在原df的index位置以及)print(grouped.groups['A'])print('-----')#既然是dict当然就可以[key]取值了
sz=grouped.size()print(sz,type(sz))print('-----')#size返回一个series index为分类属性的不同值 值为该属性对应行的个数
X Y
0 A 1
2 A 3
X Y
0 A 1
2 A 3
{'A': Int64Index([0, 2], dtype='int64'), 'B': Int64Index([1, 3], dtype='int64')}
-----
Int64Index([0, 2], dtype='int64')
-----
X
A 2
B 2
dtype: int64 <class 'pandas.core.series.Series'>
-----
A B C D
0 foo one 0.704837 0.314135
1 bar one 0.968533 0.647802
2 foo two 0.665623 -0.393522
3 bar three 1.357061 -0.252542
4 foo two -0.661338 0.233315
5 bar two -0.168765 0.402762
6 foo one -1.963668 0.486295
7 foo three 0.154741 0.442135
-----
{('bar', 'one'): Int64Index([1], dtype='int64'), ('bar', 'three'): Int64Index([3], dtype='int64'), ('bar', 'two'): Int64Index([5], dtype='int64'), ('foo', 'one'): Int64Index([0, 6], dtype='int64'), ('foo', 'three'): Int64Index([7], dtype='int64'), ('foo', 'two'): Int64Index([2, 4], dtype='int64')}
-----
Int64Index([7], dtype='int64')
a b c d
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
3 12 13 14 15
-----
one two
0 1 5
1 9 13
2 17 21
3 25 29
-----
a one
b one
c two
d two
e three
dtype: object
-----
one two
0 1 5
1 9 13
2 17 21
3 25 29
a b c d
0 1 0.897877 0.355885 0.462194
1 1 0.893098 0.235715 0.262658
2 2 0.933889 0.032109 0.129018
3 2 0.319884 0.345379 0.697470
-----
b c d
mean sum mean sum mean sum
a
1 0.895487 1.790975 0.295800 0.591600 0.362426 0.724852
2 0.626887 1.253773 0.188744 0.377489 0.413244 0.826488
-----
result1 result2
a
1 0.895487 1.790975
2 0.626887 1.253773
C:\ProgramData\Anaconda3\lib\site-packages\ipykernel_launcher.py:14: FutureWarning: using a dict on a Series for aggregation
is deprecated and will be removed in a future version
A B C D E
0 one h 10 -0.482264 0.943953
1 two h 12 -0.801970 0.006297
2 three h 14 -0.830659 0.146785
3 one h 16 -0.472067 0.961370
4 two f 18 -0.626824 0.264676
5 three f 20 -0.897931 0.112642
6 one f 22 -0.433889 0.282091
7 two f 24 -0.124638 0.905271
-----
C,D mean
C D
A
one 16 -0.462740
three 17 -0.864295
two 18 -0.517811
-----
D E sum
D E
A B
one f -0.433889 0.282091
h -0.954331 1.905322
three f -0.897931 0.112642
h -0.830659 0.146785
two f -0.751462 1.169947
h -0.801970 0.006297
-----
{'one': Int64Index([0, 3, 6], dtype='int64'), 'three': Int64Index([2, 5], dtype='int64'), 'two': Int64Index([1, 4, 7], dtype='int64')}
-----
int64 float64 object
0 10 0.461689 oneh
1 12 -0.795673 twoh
2 14 -0.683875 threeh
3 16 0.489303 oneh
4 18 -0.362148 twof
5 20 -0.785289 threef
6 22 -0.151798 onef
7 24 0.780634 twof
-----
y
0 9.517736
1 11.198030
2 13.169341
3 15.527933
4 17.373176
5 19.102069
6 21.566111
7 23.875362
-----
C D E \
mean sum max min mean sum max min mean
B
f 21 84 24 18 -0.520821 -2.083282 -0.124638 -0.897931 0.391170
h 13 52 16 10 -0.646740 -2.586960 -0.472067 -0.830659 0.514601
sum max min
B
f 1.564681 0.905271 0.112642
h 2.058404 0.961370 0.006297
data1 data2 key1 key2
0 0.749995 0.342717 a one
1 0.822763 0.717885 a two
2 0.543269 0.704744 b one
3 0.423887 0.230721 b two
4 0.470420 0.623854 a one
-----
data1 data2
key1
a 0.681060 0.561485
b 0.483578 0.467732
data1_x data2_x key1 key2 data1_y data2_y
0 0.749995 0.342717 a one 0.681060 0.561485
1 0.822763 0.717885 a two 0.681060 0.561485
4 0.470420 0.623854 a one 0.681060 0.561485
2 0.543269 0.704744 b one 0.483578 0.467732
3 0.423887 0.230721 b two 0.483578 0.467732
-----
data1 data2
0 0.681060 0.561485
1 0.681060 0.561485
2 0.483578 0.467732
3 0.483578 0.467732
4 0.681060 0.561485
-----
data1 data2 key1 key2 data1 data2
0 0.749995 0.342717 a one 0.681060 0.561485
1 0.822763 0.717885 a two 0.681060 0.561485
2 0.543269 0.704744 b one 0.483578 0.467732
3 0.423887 0.230721 b two 0.483578 0.467732
4 0.470420 0.623854 a one 0.681060 0.561485
-----
data1_x data2_x key1 key2 data1_y data2_y
0 0.749995 0.342717 a one 0.681060 0.561485
1 0.822763 0.717885 a two 0.681060 0.561485
2 0.543269 0.704744 b one 0.483578 0.467732
3 0.423887 0.230721 b two 0.483578 0.467732
4 0.470420 0.623854 a one 0.681060 0.561485
data1 data2 key1 key2
0 0.344980 0.415581 a one
1 0.989660 0.130394 a two
2 0.374878 0.102374 b one
3 0.778417 0.300815 b two
4 0.342451 0.932157 a one
-----
data1 data2
key1
a count 3.000000 3.000000
mean 0.559030 0.492711
std 0.372939 0.406409
min 0.342451 0.130394
25% 0.343715 0.272987
50% 0.344980 0.415581
75% 0.667320 0.673869
max 0.989660 0.932157
b count 2.000000 2.000000
mean 0.576647 0.201595
std 0.285345 0.140319
min 0.374878 0.102374
25% 0.475763 0.151985
50% 0.576647 0.201595
75% 0.677532 0.251205
max 0.778417 0.300815
-----
data1 data2 key1 key2
key1
a 0 0.34498 0.415581 a one
1 0.98966 0.130394 a two
-----
key1
a 0 a
1 a
4 a
b 2 b
3 b
Name: key1, dtype: object
date key values
0 2017-05-01 a 2.292729
1 2017-05-02 b 8.122388
2 2017-05-03 c 9.608781
3 2017-05-01 d 2.833724
4 2017-05-02 a 4.926847
5 2017-05-03 b 8.114626
6 2017-05-01 c 4.810743
7 2017-05-02 d 4.362093
8 2017-05-03 a 4.907056
-----
key a b c d
date
2017-05-01 1.0 NaN 1.0 1.0
2017-05-02 1.0 1.0 NaN 1.0
2017-05-03 1.0 1.0 1.0 NaN
-----
values
date key
2017-05-01 a 2.292729
c 4.810743
d 2.833724
2017-05-02 a 4.926847
b 8.122388
d 4.362093
2017-05-03 a 4.907056
b 8.114626
c 9.608781
A B C
0 1 3 1.0
1 2 3 1.0
2 2 4 NaN
3 2 4 1.0
4 2 4 1.0
-----
B 3 4
A
1 1 0
2 1 3
-----
B 3 4
A
1 0.2 0.0
2 0.2 0.6
-----
B 3 4
A
1 1.0 NaN
2 1.0 2.0
-----
B 3 4 All
A
1 1.0 NaN 1.0
2 1.0 2.0 3.0
All 2.0 2.0 4.0
C D
A
one 16 -0.558799
three 17 -0.703424
two 18 -0.552824
-----
sum mean
D E D E
A B
one f -0.391410 0.035270 -0.391410 0.035270
h -1.284988 1.052825 -0.642494 0.526412
three f -0.600380 0.938482 -0.600380 0.938482
h -0.806469 0.456976 -0.806469 0.456976
two f -1.158324 0.615345 -0.579162 0.307672
h -0.500147 0.211486 -0.500147 0.211486
-----
A one three two
B
f 1 1 2
h 2 1 1
省级政区代码 省级政区名称 地市级政区代码 地市级政区名称 年份 党委书记姓名 出生年份 出生月份 籍贯省份代码 \
0 130000 河北省 130100 石家庄市 2000 陈来立 NaN NaN NaN
1 130000 河北省 130100 石家庄市 2001 吴振华 NaN NaN NaN
2 130000 河北省 130100 石家庄市 2002 吴振华 NaN NaN NaN
3 130000 河北省 130100 石家庄市 2003 吴振华 NaN NaN NaN
4 130000 河北省 130100 石家庄市 2004 吴振华 NaN NaN NaN
5 130000 河北省 130100 石家庄市 2005 吴振华 NaN NaN NaN
6 130000 河北省 130100 石家庄市 2006 吴振华 NaN NaN NaN
7 130000 河北省 130100 石家庄市 2007 吴显国 NaN NaN NaN
8 130000 河北省 130100 石家庄市 2008 吴显国 NaN NaN NaN
9 130000 河北省 130100 石家庄市 2009 车俊 NaN NaN NaN
10 130000 河北省 130100 石家庄市 2010 孙瑞彬 NaN NaN NaN
11 130000 河北省 130200 唐山市 2000 白润璋 NaN NaN NaN
12 130000 河北省 130200 唐山市 2001 白润璋 NaN NaN NaN
13 130000 河北省 130200 唐山市 2002 白润璋 NaN NaN NaN
14 130000 河北省 130200 唐山市 2003 张和 NaN NaN NaN
15 130000 河北省 130200 唐山市 2004 张和 NaN NaN NaN
16 130000 河北省 130200 唐山市 2005 张和 NaN NaN NaN
17 130000 河北省 130200 唐山市 2006 张和 NaN NaN NaN
18 130000 河北省 130200 唐山市 2007 赵勇 NaN NaN NaN
19 130000 河北省 130200 唐山市 2008 赵勇 NaN NaN NaN
20 130000 河北省 130200 唐山市 2009 赵勇 NaN NaN NaN
21 130000 河北省 130200 唐山市 2010 赵勇 NaN NaN NaN
22 130000 河北省 130300 秦皇岛市 2000 王建忠 NaN NaN NaN
23 130000 河北省 130300 秦皇岛市 2001 王建忠 NaN NaN NaN
24 130000 河北省 130300 秦皇岛市 2002 王建忠 NaN NaN NaN
25 130000 河北省 130300 秦皇岛市 2003 宋长瑞 NaN NaN NaN
26 130000 河北省 130300 秦皇岛市 2004 宋长瑞 NaN NaN NaN
27 130000 河北省 130300 秦皇岛市 2005 宋长瑞 NaN NaN NaN
28 130000 河北省 130300 秦皇岛市 2006 宋长瑞 NaN NaN NaN
29 130000 河北省 130300 秦皇岛市 2007 王三堂 NaN NaN NaN
... ... ... ... ... ... ... ... ... ...
3633 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2003 NaN NaN NaN NaN
3634 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2004 NaN NaN NaN NaN
3635 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2005 NaN NaN NaN NaN
3636 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2006 NaN NaN NaN NaN
3637 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2007 NaN NaN NaN NaN
3638 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2008 NaN NaN NaN NaN
3639 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2009 NaN NaN NaN NaN
3640 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2010 NaN NaN NaN NaN
3641 650000 新疆维吾尔自治区 654200 塔城地区 2000 NaN NaN NaN NaN
3642 650000 新疆维吾尔自治区 654200 塔城地区 2001 NaN NaN NaN NaN
3643 650000 新疆维吾尔自治区 654200 塔城地区 2002 NaN NaN NaN NaN
3644 650000 新疆维吾尔自治区 654200 塔城地区 2003 NaN NaN NaN NaN
3645 650000 新疆维吾尔自治区 654200 塔城地区 2004 NaN NaN NaN NaN
3646 650000 新疆维吾尔自治区 654200 塔城地区 2005 NaN NaN NaN NaN
3647 650000 新疆维吾尔自治区 654200 塔城地区 2006 NaN NaN NaN NaN
3648 650000 新疆维吾尔自治区 654200 塔城地区 2007 NaN NaN NaN NaN
3649 650000 新疆维吾尔自治区 654200 塔城地区 2008 NaN NaN NaN NaN
3650 650000 新疆维吾尔自治区 654200 塔城地区 2009 NaN NaN NaN NaN
3651 650000 新疆维吾尔自治区 654200 塔城地区 2010 NaN NaN NaN NaN
3652 650000 新疆维吾尔自治区 654300 阿勒泰地区 2000 NaN NaN NaN NaN
3653 650000 新疆维吾尔自治区 654300 阿勒泰地区 2001 NaN NaN NaN NaN
3654 650000 新疆维吾尔自治区 654300 阿勒泰地区 2002 NaN NaN NaN NaN
3655 650000 新疆维吾尔自治区 654300 阿勒泰地区 2003 NaN NaN NaN NaN
3656 650000 新疆维吾尔自治区 654300 阿勒泰地区 2004 NaN NaN NaN NaN
3657 650000 新疆维吾尔自治区 654300 阿勒泰地区 2005 NaN NaN NaN NaN
3658 650000 新疆维吾尔自治区 654300 阿勒泰地区 2006 NaN NaN NaN NaN
3659 650000 新疆维吾尔自治区 654300 阿勒泰地区 2007 NaN NaN NaN NaN
3660 650000 新疆维吾尔自治区 654300 阿勒泰地区 2008 NaN NaN NaN NaN
3661 650000 新疆维吾尔自治区 654300 阿勒泰地区 2009 NaN NaN NaN NaN
3662 650000 新疆维吾尔自治区 654300 阿勒泰地区 2010 NaN NaN NaN NaN
籍贯省份名称 ... 民族 教育 是否是党校教育(是=1,否=0) 专业:人文 专业:社科 专业:理工 专业:农科 专业:医科 \
0 NaN ... NaN 硕士 1.0 NaN NaN NaN NaN NaN
1 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
2 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
3 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
4 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
5 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
6 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
7 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
8 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
9 NaN ... NaN 本科 1.0 0.0 1.0 0.0 0.0 0.0
10 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
11 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
12 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
13 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
14 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
15 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
16 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
17 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
18 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
19 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
20 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
21 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
22 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
23 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
24 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
25 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
26 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
27 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
28 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
29 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
... ... ... ... ... ... ... ... ... ... ...
3633 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3634 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3635 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3636 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3637 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3638 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3639 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3640 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3641 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3642 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3643 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3644 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3645 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3646 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3647 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3648 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3649 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3650 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3651 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3652 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3653 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3654 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3655 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3656 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3657 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3658 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3659 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3660 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3661 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3662 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
入党年份 工作年份
0 NaN NaN
1 NaN NaN
2 NaN NaN
3 NaN NaN
4 NaN NaN
5 NaN NaN
6 NaN NaN
7 NaN NaN
8 NaN NaN
9 NaN NaN
10 NaN NaN
11 NaN NaN
12 NaN NaN
13 NaN NaN
14 NaN NaN
15 NaN NaN
16 NaN NaN
17 NaN NaN
18 NaN NaN
19 NaN NaN
20 NaN NaN
21 NaN NaN
22 NaN NaN
23 NaN NaN
24 NaN NaN
25 NaN NaN
26 NaN NaN
27 NaN NaN
28 NaN NaN
29 NaN NaN
... ... ...
3633 NaN NaN
3634 NaN NaN
3635 NaN NaN
3636 NaN NaN
3637 NaN NaN
3638 NaN NaN
3639 NaN NaN
3640 NaN NaN
3641 NaN NaN
3642 NaN NaN
3643 NaN NaN
3644 NaN NaN
3645 NaN NaN
3646 NaN NaN
3647 NaN NaN
3648 NaN NaN
3649 NaN NaN
3650 NaN NaN
3651 NaN NaN
3652 NaN NaN
3653 NaN NaN
3654 NaN NaN
3655 NaN NaN
3656 NaN NaN
3657 NaN NaN
3658 NaN NaN
3659 NaN NaN
3660 NaN NaN
3661 NaN NaN
3662 NaN NaN
[3663 rows x 23 columns]
-----
OrderedDict([('说明', Empty DataFrame
Columns: [中国人民共和国地市级党委书记数据库(2000-2010)
Data on Prefectural Party Secretary of P. R. China, 2000-2010
如使用本数据库,请在论文中致谢或引用。使用过程中遇到问题,请联系[email protected]。引用格式:
陈硕,2015,从治理到制度:央地关系下的中国政治精英选拔,1368-2010。复旦大学经济系工作论文
Please kindly acknowledge us (see below) when publishing your work using this data source--be it in whole or in part. Contact [email protected] if you have any questions concerning either the data structure or programming.
Shuo Chen, 2015, “From Governance to Institutionalization: Political Selection from the Perspective of Central-local Relations in China--Past and Present (1368-2010)” Department of Economics, Fudan University Working Paper.
地市级党委书记数据库由复旦大学经济学院陈硕副教授及其团队(Fudan WTF Social Science Lab)成员整理。数据库涵盖全国27个省(及自治区)333个地级市(及副省级城市、自治州和地区)2000-2010年989位党委书记个人信息。数据类型为市-年平衡面板, 3663个市-年-党委书记观察值(缺失642个观察值信息,实有3021个观察值)。以下是数据建立方法:
1. 查阅各省(及自治区)年鉴整理出2000-2010年间各地市级行政区划党委书记名单
2. 通过人民网、新华网、各地方政府网站及百度百科查询各党委书记简历
3. 对简历进行电子化整理获得现有数据库
4. 当某市某年有超过1位党委书记任职时,我们以最后上任书记信息为准
]
Index: []), ('中国人民共和国地市级党委书记数据库(2000-10)', 省级政区代码 省级政区名称 地市级政区代码 地市级政区名称 年份 党委书记姓名 出生年份 出生月份 籍贯省份代码 \
0 130000 河北省 130100 石家庄市 2000 陈来立 NaN NaN NaN
1 130000 河北省 130100 石家庄市 2001 吴振华 NaN NaN NaN
2 130000 河北省 130100 石家庄市 2002 吴振华 NaN NaN NaN
3 130000 河北省 130100 石家庄市 2003 吴振华 NaN NaN NaN
4 130000 河北省 130100 石家庄市 2004 吴振华 NaN NaN NaN
5 130000 河北省 130100 石家庄市 2005 吴振华 NaN NaN NaN
6 130000 河北省 130100 石家庄市 2006 吴振华 NaN NaN NaN
7 130000 河北省 130100 石家庄市 2007 吴显国 NaN NaN NaN
8 130000 河北省 130100 石家庄市 2008 吴显国 NaN NaN NaN
9 130000 河北省 130100 石家庄市 2009 车俊 NaN NaN NaN
10 130000 河北省 130100 石家庄市 2010 孙瑞彬 NaN NaN NaN
11 130000 河北省 130200 唐山市 2000 白润璋 NaN NaN NaN
12 130000 河北省 130200 唐山市 2001 白润璋 NaN NaN NaN
13 130000 河北省 130200 唐山市 2002 白润璋 NaN NaN NaN
14 130000 河北省 130200 唐山市 2003 张和 NaN NaN NaN
15 130000 河北省 130200 唐山市 2004 张和 NaN NaN NaN
16 130000 河北省 130200 唐山市 2005 张和 NaN NaN NaN
17 130000 河北省 130200 唐山市 2006 张和 NaN NaN NaN
18 130000 河北省 130200 唐山市 2007 赵勇 NaN NaN NaN
19 130000 河北省 130200 唐山市 2008 赵勇 NaN NaN NaN
20 130000 河北省 130200 唐山市 2009 赵勇 NaN NaN NaN
21 130000 河北省 130200 唐山市 2010 赵勇 NaN NaN NaN
22 130000 河北省 130300 秦皇岛市 2000 王建忠 NaN NaN NaN
23 130000 河北省 130300 秦皇岛市 2001 王建忠 NaN NaN NaN
24 130000 河北省 130300 秦皇岛市 2002 王建忠 NaN NaN NaN
25 130000 河北省 130300 秦皇岛市 2003 宋长瑞 NaN NaN NaN
26 130000 河北省 130300 秦皇岛市 2004 宋长瑞 NaN NaN NaN
27 130000 河北省 130300 秦皇岛市 2005 宋长瑞 NaN NaN NaN
28 130000 河北省 130300 秦皇岛市 2006 宋长瑞 NaN NaN NaN
29 130000 河北省 130300 秦皇岛市 2007 王三堂 NaN NaN NaN
... ... ... ... ... ... ... ... ... ...
3633 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2003 NaN NaN NaN NaN
3634 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2004 NaN NaN NaN NaN
3635 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2005 NaN NaN NaN NaN
3636 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2006 NaN NaN NaN NaN
3637 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2007 NaN NaN NaN NaN
3638 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2008 NaN NaN NaN NaN
3639 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2009 NaN NaN NaN NaN
3640 650000 新疆维吾尔自治区 654000 伊犁哈萨克自治州 2010 NaN NaN NaN NaN
3641 650000 新疆维吾尔自治区 654200 塔城地区 2000 NaN NaN NaN NaN
3642 650000 新疆维吾尔自治区 654200 塔城地区 2001 NaN NaN NaN NaN
3643 650000 新疆维吾尔自治区 654200 塔城地区 2002 NaN NaN NaN NaN
3644 650000 新疆维吾尔自治区 654200 塔城地区 2003 NaN NaN NaN NaN
3645 650000 新疆维吾尔自治区 654200 塔城地区 2004 NaN NaN NaN NaN
3646 650000 新疆维吾尔自治区 654200 塔城地区 2005 NaN NaN NaN NaN
3647 650000 新疆维吾尔自治区 654200 塔城地区 2006 NaN NaN NaN NaN
3648 650000 新疆维吾尔自治区 654200 塔城地区 2007 NaN NaN NaN NaN
3649 650000 新疆维吾尔自治区 654200 塔城地区 2008 NaN NaN NaN NaN
3650 650000 新疆维吾尔自治区 654200 塔城地区 2009 NaN NaN NaN NaN
3651 650000 新疆维吾尔自治区 654200 塔城地区 2010 NaN NaN NaN NaN
3652 650000 新疆维吾尔自治区 654300 阿勒泰地区 2000 NaN NaN NaN NaN
3653 650000 新疆维吾尔自治区 654300 阿勒泰地区 2001 NaN NaN NaN NaN
3654 650000 新疆维吾尔自治区 654300 阿勒泰地区 2002 NaN NaN NaN NaN
3655 650000 新疆维吾尔自治区 654300 阿勒泰地区 2003 NaN NaN NaN NaN
3656 650000 新疆维吾尔自治区 654300 阿勒泰地区 2004 NaN NaN NaN NaN
3657 650000 新疆维吾尔自治区 654300 阿勒泰地区 2005 NaN NaN NaN NaN
3658 650000 新疆维吾尔自治区 654300 阿勒泰地区 2006 NaN NaN NaN NaN
3659 650000 新疆维吾尔自治区 654300 阿勒泰地区 2007 NaN NaN NaN NaN
3660 650000 新疆维吾尔自治区 654300 阿勒泰地区 2008 NaN NaN NaN NaN
3661 650000 新疆维吾尔自治区 654300 阿勒泰地区 2009 NaN NaN NaN NaN
3662 650000 新疆维吾尔自治区 654300 阿勒泰地区 2010 NaN NaN NaN NaN
籍贯省份名称 ... 民族 教育 是否是党校教育(是=1,否=0) 专业:人文 专业:社科 专业:理工 专业:农科 专业:医科 \
0 NaN ... NaN 硕士 1.0 NaN NaN NaN NaN NaN
1 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
2 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
3 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
4 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
5 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
6 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
7 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
8 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
9 NaN ... NaN 本科 1.0 0.0 1.0 0.0 0.0 0.0
10 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
11 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
12 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
13 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
14 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
15 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
16 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
17 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
18 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
19 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
20 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
21 NaN ... NaN 博士 0.0 0.0 1.0 0.0 0.0 0.0
22 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
23 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
24 NaN ... NaN 本科 0.0 0.0 0.0 1.0 0.0 0.0
25 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
26 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
27 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
28 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
29 NaN ... NaN 硕士 1.0 0.0 1.0 0.0 0.0 0.0
... ... ... ... ... ... ... ... ... ... ...
3633 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3634 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3635 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3636 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3637 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3638 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3639 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3640 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3641 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3642 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3643 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3644 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3645 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3646 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3647 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3648 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3649 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3650 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3651 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3652 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3653 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3654 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3655 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3656 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3657 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3658 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3659 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3660 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3661 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
3662 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN
入党年份 工作年份
0 NaN NaN
1 NaN NaN
2 NaN NaN
3 NaN NaN
4 NaN NaN
5 NaN NaN
6 NaN NaN
7 NaN NaN
8 NaN NaN
9 NaN NaN
10 NaN NaN
11 NaN NaN
12 NaN NaN
13 NaN NaN
14 NaN NaN
15 NaN NaN
16 NaN NaN
17 NaN NaN
18 NaN NaN
19 NaN NaN
20 NaN NaN
21 NaN NaN
22 NaN NaN
23 NaN NaN
24 NaN NaN
25 NaN NaN
26 NaN NaN
27 NaN NaN
28 NaN NaN
29 NaN NaN
... ... ...
3633 NaN NaN
3634 NaN NaN
3635 NaN NaN
3636 NaN NaN
3637 NaN NaN
3638 NaN NaN
3639 NaN NaN
3640 NaN NaN
3641 NaN NaN
3642 NaN NaN
3643 NaN NaN
3644 NaN NaN
3645 NaN NaN
3646 NaN NaN
3647 NaN NaN
3648 NaN NaN
3649 NaN NaN
3650 NaN NaN
3651 NaN NaN
3652 NaN NaN
3653 NaN NaN
3654 NaN NaN
3655 NaN NaN
3656 NaN NaN
3657 NaN NaN
3658 NaN NaN
3659 NaN NaN
3660 NaN NaN
3661 NaN NaN
3662 NaN NaN
[3663 rows x 23 columns]), ('ESRI_MAPINFO_SHEET', Empty DataFrame
Columns: []
Index: [])])
-----