Pandas 17-行操作和列操作
1. 行操作
选择行
可以使用标签索引(loc)或位置索引(iloc)来选择行。
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({
'A': [1, 2, 3, 4, 5], 'B': [10, 20, 30, 40, 50]})
# 使用标签索引选择行
selected_row_loc = df.loc[2]
print("使用标签索引选择行:")
print(selected_row_loc)
# 使用位置索引选择行
selected_row_iloc = df.iloc[2]
print("\n使用位置索引选择行:")
print(selected_row_iloc)
添加行
可以使用 loc
或 append
方法添加行。
# 使用 loc 添加行
df.loc[5] = [6, 60]
print("\n使用 loc 添加行:")
print(df)
# 使用 append 方法添加行
new_row = pd.Series({'A': 7, 'B': 70})
df = df.append(new_row, ignore_index=True)
print("\n使用 append 方法添加行:")
print(df)
删除行
可以使用 drop
方法删除行。
# 删除行
df = df.drop(5)
print("\n删除行:")
print(df)
2. 列操作
选择列
可以使用列名直接选择列。
# 选择列
selected_column = df['A']
print("\n选择列:")
print(selected_column)
添加列
可以使用列名直接添加列。
# 添加列
df['C'] = [100, 200, 300, 400, 500]
print("\n添加列:")
print(df)
删除列
可以使用 drop
方法删除列。
# 删除列
df = df.drop('C', axis=1)
print("\n删除列:")
print(df)
重命名列
可以使用 rename
方法重命名列。
# 重命名列
df = df.rename(columns={'A': 'Column_A', 'B': 'Column_B'})
print("\n重命名列:")
print(df)
3. 结合行和列操作
在实际应用中,行和列操作可以结合使用,以满足更复杂的数据处理需求。
# 选择特定行和列
selected_data = df.loc[2, 'Column_A']
print("\n选择特定行和列:")
print(selected_data)
# 添加新行和新列
df.loc[5] = [6, 60]
df['Column_C'] = [100, 200, 300, 400, 500, 600]
print("\n添加新行和新列:")
print(df)
# 删除特定行和列
df = df.drop(5)
df = df.drop('Column_C', axis=1)
print("\n删除特定行和列:")
print(df)
总结
通过行操作和列操作,可以灵活地对 DataFrame 进行数据处理。以下是一个完整的示例代码,展示了如何结合使用这些方法:
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({
'A': [1, 2, 3, 4, 5], 'B': [10, 20, 30, 40, 50]})
# 使用标签索引选择行
selected_row_loc = df.loc[2]
print("使用标签索引选择行:")
print(selected_row_loc)
# 使用位置索引选择行
selected_row_iloc = df.iloc[2]
print("\n使用位置索引选择行:")
print(selected_row_iloc)
# 使用 loc 添加行
df.loc[5] = [6, 60]
print("\n使用 loc 添加行:")
print(df)
# 使用 append 方法添加行
new_row = pd.Series({'A': 7, 'B': 70})
df = df.append(new_row, ignore_index=True)
print("\n使用 append 方法添加行:")
print(df)
# 删除行
df = df.drop(5)
print("\n删除行:")
print(df)
# 选择列
selected_column = df['A']
print("\n选择列:")
print(selected_column)
# 添加列
df['C'] = [100, 200, 300, 400, 500]
print("\n添加列:")
print(df)
# 删除列
df = df.drop('C', axis=1)
print("\n删除列:")
print(df)
# 重命名列
df = df.rename(columns={'A': 'Column_A', 'B': 'Column_B'})
print("\n重命名列:")
print(df)
# 选择特定行和列
selected_data = df.loc[2, 'Column_A']
print("\n选择特定行和列:")
print(selected_data)
# 添加新行和新列
df.loc[5] = [6, 60]
df['Column_C'] = [100, 200, 300, 400, 500, 600]
print("\n添加新行和新列:")
print(df)
# 删除特定行和列
df = df.drop(5)
df = df.drop('Column_C', axis=1)
print("\n删除特定行和列:")
print(df)