python,pandas, DataFrame数据获取方式
一、创建DataFrame
1 df=pd.DataFrame(np.arange(1,10).reshape(3,3)) 2 my_col=dict(zip(range(3),['A','B','C'])) 3 df.rename(columns=my_col,inplace=True) 4 print(df) 5 print(type(df)) 6 7 结果为: 8 A B C 9 0 1 2 3 10 1 4 5 6 11 2 7 8 9 12 <class 'pandas.core.frame.DataFrame'>
一、at和iat的用法
at和iat,可选择指定行、指定列的单个元素。
1.at的用法
1 a=df.at[1,'A'] 2 print(a) 3 print(type(a)) 4 5 结果为: 6 4 7 <class 'numpy.int32'>
2.iat的用法
1 a=df.iat[1,1] 2 print(a) 3 print(type(a)) 4 结果为: 5 5 6 <class 'numpy.int32'>
一、loc和iloc的用法
loc和iloc,可选择指定行、指定列或者某个区域的多个元素。
1.loc的用法
1 a=df.loc[1,'A'] 2 print(a) 3 print(type(a)) 4 结果为: 5 4 6 <class 'numpy.int32'> 7 8 a=df.loc[:,'A'] 9 print(a) 10 print(type(a)) 11 结果为: 12 0 1 13 1 4 14 2 7 15 <class 'pandas.core.series.Series'> 16 17 a=df.loc[1:2,:] 18 print(a) 19 print(type(a)) 20 结果为: 21 A B C 22 1 4 5 6 23 2 7 8 9 24 <class 'pandas.core.frame.DataFrame'> 25 26 a=df.loc[:,:] 27 print(a) 28 print(type(a)) 29 结果为: 30 A B C 31 0 1 2 3 32 1 4 5 6 33 2 7 8 9 34 <class 'pandas.core.frame.DataFrame'>
2.iloc的用法
1 a=df.iloc[1,0] 2 print(a) 3 print(type(a)) 4 结果为: 5 4 6 <class 'numpy.int32'> 7 8 a=df.iloc[:,0] 9 print(a) 10 print(type(a)) 11 结果为: 12 0 1 13 1 4 14 2 7 15 <class 'pandas.core.series.Series'> 16 17 a=df.iloc[1:2,:] 18 print(a) 19 print(type(a)) 20 结果为: 21 A B C 22 1 4 5 6 23 <class 'pandas.core.frame.DataFrame'> 24 25 a=df.iloc[:,:] 26 print(a) 27 print(type(a)) 28 结果为: 29 A B C 30 0 1 2 3 31 1 4 5 6 32 2 7 8 9 33 <class 'pandas.core.frame.DataFrame'>
四、df的用法
df,要么选择指定列的元素,要么选择指定行的元素,要么通过条件判断选择指定区域的元素。
1 a=df['A'] 2 print(a) 3 print(type(a)) 4 结果为: 5 0 1 6 1 4 7 2 7 8 <class 'pandas.core.series.Series'> 9 10 a=df[['A','B']] 11 print(a) 12 print(type(a)) 13 结果为: 14 A B 15 0 1 2 16 1 4 5 17 2 7 8 18 <class 'pandas.core.frame.DataFrame'> 19 20 a=df[df['A']>=4] 21 print(a) 22 print(type(a)) 23 结果为: 24 A B C 25 1 4 5 6 26 2 7 8 9 27 <class 'pandas.core.frame.DataFrame'> 28 29 a=df[1:3] 30 print(a) 31 print(type(a)) 32 结果为: 33 A B C 34 1 4 5 6 35 2 7 8 9 36 <class 'pandas.core.frame.DataFrame'>