歡迎您光臨本站 註冊首頁

詳解pandas獲取Dataframe元素值的幾種方法

←手機掃碼閱讀     zhang3221994 @ 2020-06-16 , reply:0


選擇列
 

使用類字典屬性,返回的是Series類型
 data[‘w']
 遍歷Series
 

  for index in data['w'] .index:  time_dis = data['w'] .get(index)

 

pandas.DataFrame.at
 

根據行索引和列名,獲取一個元素的值
 

  >>> df = pd.DataFrame([[0, 2, 3], [0, 4, 1], [10, 20, 30]],  ...     columns=['A', 'B', 'C'])  >>> df   A B C  0 0 2 3  1 0 4 1  2 10 20 30

 

  >>> df.at[4, 'B']  2

 

或者

  >>> df.iloc[5].at['B']  4

 

pandas.DataFrame.iat
 

根據行索引和列索引獲取元素值
 

  >>> df = pd.DataFrame([[0, 2, 3], [0, 4, 1], [10, 20, 30]],  ...     columns=['A', 'B', 'C'])  >>> df   A B C  0 0 2 3  1 0 4 1  2 10 20 30

 

  >>> df.iat[1, 2]  1

 

或者
 

  >>> df.iloc[0].iat[1]  2

 

pandas.DataFrame.loc
 

選取元素,或者行
 

  >>> df = pd.DataFrame([[1, 2], [4, 5], [7, 8]],  ...  index=['cobra', 'viper', 'sidewinder'],  ...  columns=['max_speed', 'shield'])  >>> df     max_speed shield  cobra    1  2  viper    4  5  sidewinder   7  8

 

選取元素
 

  >>> df.loc['cobra', 'shield']  2

 

選取行返回一個series
 

  >>> df.loc['viper']  max_speed 4  shield  5  Name: viper, dtype: int64

 

選取行列返回dataframe
 

  >>> df.loc[['viper', 'sidewinder']]     max_speed shield  viper    4  5  sidewinder   7  8     pandas.DataFrame.iloc  >>> mydict = [{'a': 1, 'b': 2, 'c': 3, 'd': 4},  ...   {'a': 100, 'b': 200, 'c': 300, 'd': 400},  ...   {'a': 1000, 'b': 2000, 'c': 3000, 'd': 4000 }]  >>> df = pd.DataFrame(mydict)  >>> df    a  b  c  d  0  1  2  3  4  1 100 200 300 400  2 1000 2000 3000 4000

 

按索引選取元素
 

  >>> df.iloc[0, 1]  2

 

獲取行的series
 

  >>> type(df.iloc[0])>>> df.iloc[0]  a 1  b 2  c 3  d 4  Name: 0, dtype: int64

          


[zhang3221994 ] 詳解pandas獲取Dataframe元素值的幾種方法已經有150次圍觀

http://coctec.com/docs/python/shhow-post-238750.html