for i in range(len(df))
遍历了 DataFrame 中的行索引,然后内部循环 for column in df.columns
遍历了每列的标签,使用 df.at[i, column]
访问了每个单元格的值。
# df.at 是 Pandas 中用于访问单个单元格的方法。
# value = df.at[row_label, column_label]
# row_label 是行的标签(索引)。
# column_label 是列的标签。# 创建一个示例 DataFrame
data = {'A': [1, 2, 3], 'B': ['a', 'b', 'c'], 'C': [4.5, 5.5, 6.5]}
df = pd.DataFrame(data)# 遍历每行数据
for i in range(len(df)):print(f"Row {i}:")for column in df.columns:value = df.at[i, column]print(f" {column}: {value}")
使用 iterrows() 方法遍历DataFrame的每一行
row.items() 用于迭代每行中的数据。在内部循环中,column 是列的名称(键),value 是该列的值。这样可以遍历DataFrame中的每一行并输出每个数据的列标签和值。
import pandas as pd# 创建一个示例 DataFrame
data = {'A': [1, 2, 3], 'B': ['a', 'b', 'c'], 'C': [4.5, 5.5, 6.5]}
df = pd.DataFrame(data)# 使用 iterrows() 方法遍历DataFrame的每一行
# row.items() 是 Pandas Series 对象的一个方法,它用于迭代 Series 中的每个元素。Pandas Series 是一维带标签的数组,类似于字典。
for index, row in df.iterrows():print(f"Row {index}:")for column, value in row.items():print(f" {column}: {value}")
.iloc
:使用整数位置索引(0 到行数-1)来选择行和列。.loc
:使用行和列的标签或索引来选择行和列。
import pandas as pddata = {'A': [1, 2, 3], 'B': ['a', 'b', 'c'], 'C': [4.5, 5.5, 6.5]}
df = pd.DataFrame(data)column_A = df['A'] # 通过列名 'A' 访问 'A' 列的数据# .iloc:使用整数位置索引(0 到行数-1)来选择行和列。
# .loc:使用行和列的标签或索引来选择行和列。row_1 = df.iloc[0] # 访问索引为 0 的行数据
print(row_1)row_label_0 = df.loc[0] # 访问标签为 0 的行数据
print(row_label_0)queried_data = df.query('A > 1 and B == "b"') # 使用 query 方法查询数据
print(queried_data)