如何从Pandas DataFrame中获取单元格值
在这篇文章中,我们将讨论如何在Python中从Pandas Dataframe中获取单元格值。
方法1:用函数loc()从数据框架的单元格中获取数值
Pandas DataFrame.loc属性通过标签或布尔数组访问指定DataFrame中的一组行和列。这里,我们将使用loc()函数来获取单元格的值。
# import pandas module
import pandas as pd
# create dataframe with 3 columns
data = pd.DataFrame({
"id": [7058, 7059, 7072, 7054],
"name": ['sravan', 'jyothika', 'harsha', 'ramya'],
"subjects": ['java', 'python', 'html/php', 'php/js']})
# get the cell value using loc() function
# in name column and 1 row
print(data['id'].loc[data.index[0]])
# get the cell value using loc() function
# in name column and 2 row
print(data['name'].loc[data.index[1]])
# get the cell value using loc() function
# in subjects column and 4 row
print(data['subjects'].loc[data.index[3]])
输出:
7058
jyothika
php/js
方法2:从数据框架的一个单元格中获取一个值,使用iloc[]
Dataframe.iloc[]方法是在数据框架的索引标签不是0、1、2、3….n的数字系列时,或者在用户不知道索引标签时使用。这里我们将使用索引号来访问索引值。
# import pandas module
import pandas as pd
# get the cell value using iloc() function
# in id column and 1 row
print(data['id'].iloc[0])
# get the cell value using iloc() function
# in name column and 1 row
print(data['name'].iloc[0])
# get the cell value using iloc() function
# in subjects column and 1 row
print(data['subjects'].iloc[0])
输出:
7058
sravan
java
方法3:用values()函数从数据框架的单元格中获取一个值
values()是Python编程语言中一个内置的方法,它返回一个视图对象。视图对象包含字典的值,是一个列表。
# import pandas module
import pandas as pd
# get the cell value using values() function
# in id column and 1 row
print(data['name'].values[0])
# get the cell value using values() function
# in id column and 2 row
print(data['id'].values[1])
# get the cell value using values() function
# in subjects column and 4 row
print(data['subjects'].values[3])
输出:
sravan
7059
php/js
方法4:从数据框架的一个单元格中获取数值使用 at[] 函数
要在传递的位置返回数据框架中的数据,请使用Pandas at[]函数。[position, Column Name]是传递位置的格式。这个方法的功能与Pandas loc[]相似,只是at[]返回一个单一的值,所以执行起来更快。
# import pandas module
import pandas as pd
# get the cell value using at() function
# in id column and 2 row
print(data.at[1, 'id'])
# get the cell value using at() function
# in id column and 4 row
print(data.at[3, 'name'])
# get the cell value using at() function
# in subjects column and 1 row
print(data.at[0, 'subjects'])
输出:
7059
ramya
java
方法5:用函数从数据框架的单元格中获取一个值
这个函数需要一个行和列的索引来显示Dataframe中的单元格值。这也是与at[]相同的工作。
# import pandas module
import pandas as pd
# create dataframe with 3 columns
data = pd.DataFrame({
"id": [7058, 7059, 7072, 7054],
"name": ['sravan', 'jyothika', 'harsha', 'ramya'],
"subjects": ['java', 'python', 'html/php', 'php/js']
}
)
# get the cell value using iat() function
# in id column and 1 row
print(data.iat[0, 0])
# get the cell value using iat() function
# in name column and 1 row
print(data.iat[0, 1])
# get the cell value using iat() function
# in id column and 2 row
print(data.iat[1, 0])
输出:
7058
sravan
7059