在Pandas库中,你可以使用 .loc
和 .iloc
来访问DataFrame的行和列。.loc
是基于标签的索引器,而 .iloc
是基于整数的位置索引器。
以下是如何使用 .loc
和 .iloc
来获取DataFrame的第4行数据的示例代码:
import pandas as pd
import numpy as np
# 创建一个示例DataFrame
data = {
'a': np.random.randint(1, 20, 10),
'b': np.random.randint(1, 20, 10),
'c': np.random.randint(1, 20, 10),
'd': np.random.randint(1, 20, 10),
'e': np.random.randint(1, 20, 10)
}
df = pd.DataFrame(data)
# 打印原始DataFrame
print("原始DataFrame:")
print(df)
.iloc
获取第4行# 获取第4行(从0开始索引)
fourth_row_by_iloc = df.iloc[3]
# 打印结果
print("\n使用 .iloc 获取第4行:")
print(fourth_row_by_iloc)
.loc
获取第4行# 假设行标签是从索引0开始的整数
fourth_row_by_loc = df.loc[3]
# 打印结果
print("\n使用 .loc 获取第4行:")
print(fourth_row_by_loc)
如果你的DataFrame行标签不是默认的整数索引,你需要确保使用正确的标签来访问行。例如:
# 创建一个具有自定义行标签的DataFrame
index_labels = ['row1', 'row2', 'row3', 'row4', 'row5', 'row6', 'row7', 'row8', 'row9', 'row10']
df_custom_index = pd.DataFrame(data, index=index_labels)
# 打印自定义索引的DataFrame
print("\n自定义行标签的DataFrame:")
print(df_custom_index)
# 使用 .loc 获取第4行(根据自定义标签)
fourth_row_by_loc_custom = df_custom_index.loc['row4']
# 打印结果
print("\n使用 .loc 获取第4行(自定义行标签):")
print(fourth_row_by_loc_custom)
.iloc[3]
:通过位置索引获取第4行(索引从0开始,因此第4行索引为3)。.loc[3]
:通过默认的整数索引获取第4行,假设行标签是从0开始的整数。.loc['row4']
:通过自定义的行标签获取第4行。这种方法可以灵活地根据行索引或标签来访问DataFrame的特定行。