在Python中访问pandas DataFrame中最后一个元素的索引
为了访问pandas数据帧中最后一个元素的索引,我们可以使用index属性或tail()方法。Pandas是用于数据操作和分析的Python库。数据帧是由pandas提供的用于有效处理大型数据集的数据结构。在本文中,我们将了解如何访问pandas数据帧中最后一个元素的索引。
什么是数据帧?
数据帧是一个二维表格数据结构,具有行和列,就像矩阵、电子表格或SQL表格一样。任何类型的数据,如CSV文件、字典或列表可以轻松转换为数据帧。数据帧的列可以具有不同的数据类型,例如整数、浮点数或字符串等。数据帧的每一行都有一个唯一的索引,默认情况下从0开始。我们也可以使用set_index()方法为数据帧的行设置自定义索引。
访问数据帧中的元素?
为了访问pandas数据帧中最后一个元素的索引,我们需要先了解如何访问数据帧的元素。我们使用loc[]和iloc[]方法访问数据帧的任何元素。例如,让我们考虑一个数据帧,
Subject Marks Grade
0 Maths 70 B
1 Science 85 A
2 Computer 90 A
3 English 45 C
上面的数据帧有三列,即Subject、marks和Grade,以及带有索引0,1,2,3的四行。loc[]方法需要行标签和列标签来访问数据帧的任何元素。在上面的例子中,如果我们想要访问数据帧的第三行和第一列的值,可以使用loc[]方法来完成这个操作,如下所示:
语法
loc[row_label,column_label]
loc[]方法用于访问数据帧的元素。需要传递row_label和column_label参数给loc()方法,以访问数据帧的特定元素。
iloc[row_index,column_index]
iloc[]方法用于访问数据帧的元素。需要传递row_index和column_index参数给iloc()方法,以访问数据帧的特定元素。
例1
Pandas将使用pd.dataframe()方法将字典转换为数据帧。一旦数据帧可用于df变量,我们就可以使用row_label为2和column_label为‘Subject’的值来访问数据帧的值。
#导入pandas
import pandas as pd
# 创建数据帧
df = pd.DataFrame({'Subject': ['Maths', 'Science', 'Computer', 'English'],
'Marks': ['70', '85', '90', '45'],
'Grade': ['B', 'A','A', 'C']})
# 显示原始数据帧
print("Original dataframe")
print(df)
print(df.loc[2,'Subject'])
输出
Original dataframe
Subject Marks Grade
0 Maths 70 B
1 Science 85 A
2 Computer 90 A
3 English 45 C
Computer
例2
类似地,iloc[]方法需要行和列索引作为参数来访问数据帧中的任何元素。如果我们想要访问第四行和第二列的值,我们可以使用iloc[]方法来完成。
#导入pandas
import pandas as pd
# 创建数据帧
df = pd.DataFrame({'Subject': ['Maths', 'Science', 'Computer', 'English'],
'Marks': ['70', '85', '90', '45'],
'Grade': ['B', 'A', 'A', 'C']})
# 显示原始数据帧
print("Original dataframe")
print(df)
print(df.iloc[3,1])
输出
Original dataframe
Subject Marks Grade
0 Maths 70 B
1 Science 85 A
2 Computer 90 A
3 English 45 C
45
使用索引属性
索引指定数据帧的行索引。默认情况下,数据帧的行索引从0开始。要访问最后一行索引,我们可以从-1开始。
语法
df.index[row_index]
索引属性用于访问数据帧中行的索引。要访问最后一行的索引,我们可以从负值开始,即-1。
例如,我们将创建以下数据帧:
Subject Marks Grade
0 Maths 70 B
1 Science 85 A
2 Computer 90 A
3 English 45 C
示例
# import pandas
import pandas as pd
# create dataframe
df = pd.DataFrame({'Subject': ['Maths', 'Science', 'Computer', 'English'],
'Marks': ['70', '85', '90', '45'],
'Grade': ['B', 'A', 'A', 'C']})
# Display original dataframe
print("原始数据帧")
print(df)
# Display last index value of dataframe
# index[-1] is return the last row index of
# all rows in DataFrame.
print("最后一行的索引值")
print(df.index[-1])
输出
原始数据帧
Subject Marks Grade
0 Maths 70 B
1 Science 85 A
2 Computer 90 A
3 English 45 C
最后一行的索引值
3
使用tail()方法
tail(n)方法返回pandas数据帧的最后第n行的值。如果我们只想获取最后一行的索引,我们可以使用tail方法和索引属性来获取最后一行的索引。传递给尾部方法的参数n返回pandas数据帧的最后n行,只要我们可以传递n = 1即可获得最后一行。
语法
df.tail(nth_row_index)
tail()方法返回从末尾开始的第n行的值。从末尾开始的行索引作为参数传递给尾部函数。最后一行的索引将从1开始。
df.tail(nth_row_index).index[column_index]
尾部方法返回第n个索引处的整个行值。要访问第n行处元素的特定索引,我们需要将column_index值传递给它。
示例
在此示例中,我们将使用pd.DataFrame()方法将Python字典数据转换为数据框。我们将使用index()和tail()方法来获取数据框中最后一个元素或行的索引值,
# import pandas
import pandas as pd
# create dataframe
df = pd.DataFrame({'Subject': ['Maths', 'Science', 'Computer', 'English'],
'Marks': ['70', '85', '90', '45'],
'Grade': ['B', 'A', 'A', 'C']})
# Display original dataframe
print("原始数据帧")
print(df)
# Display last index value of dataframe
# index[-1] is return the last row index of
# all rows in DataFrame.
print("最后一行的值")
print(df.tail(1))
print("最后一行的索引值")
print(df.tail(1).index[0])
输出
原始数据帧
Subject Marks Grade
0 Maths 70 B
1 Science 85 A
2 Computer 90 A
3 English 45 C
最后一行的值
Subject Marks Grade
3 English 45 C
最后一行的索引值3
结论
在本文中,我们了解了如何访问Python Pandas数据帧中的任何元素以及如何使用索引属性和尾部方法访问Pandas数据帧中最后一个元素的索引。当向索引传递负索引-1时,索引属性返回最后一行的索引。尾部属性在传递从1开始的行索引时,返回从末尾开始的第n行的行值。要访问特定元素索引,我们可以一起使用尾部和索引属性。