看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
add_prefix()
是 pandas 中用于在 DataFrame 或 Series 的列标签或索引标签前添加前缀的一个方法。这对于处理大型数据集时,快速区分不同来源的数据列或索引非常有用。
DataFrame.add_prefix(prefix, axis=None)
prefix:
str
axis:
int
或 None
,默认为 None
None
(默认)表示根据数据类型添加前缀:对 DataFrame 操作时,默认是在列标签上添加前缀;对 Series 操作时,则是在索引标签上添加前缀。axis=0
时,在 DataFrame 的索引标签上添加前缀。axis=1
时,在 DataFrame 的列标签上添加前缀。add_prefix()
添加不同的前缀来区分它们。s = pd.Series([1, 2, 3, 4])
s
'''
0 1
1 2
2 3
3 4
dtype: int64
'''
s.add_prefix('item_')
'''
item_0 1
item_1 2
item_2 3
item_3 4
dtype: int64
'''
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [3, 4, 5, 6]})
df
'''
A B
0 1 3
1 2 4
2 3 5
3 4 6
'''
df.add_prefix('col_')
'''
col_A col_B
0 1 3
1 2 4
2 3 5
3 4 6
'''
例1: 基础用法
假设有一个简单的 DataFrame,包含三个列:'A'、'B' 和 'C'。
import pandas as pd
# 示例数据
df = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]
})
# 添加前缀到列名
df_prefixed = df.add_prefix('col_')
print(df_prefixed)
输出:
'''
col_A col_B col_C
0 1 4 7
1 2 5 8
2 3 6 9
'''
例2: 在索引上添加前缀
假设有一个简单的 DataFrame,包含三个列和三个索引。
import pandas as pd
# 示例数据
df = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]
}, index=['x', 'y', 'z'])
# 添加前缀到索引
df_prefixed = df.add_prefix('row_', axis=0)
print(df_prefixed)
输出:
'''
A B C
row_x 1 4 7
row_y 2 5 8
row_z 3 6 9
'''
在这个例子中,索引标签被添加了 'row_' 前缀。
例3: 区分多个数据源的列
如果有两个数据源,它们的列名相同或相似,可以通过添加不同的前缀来区分它们:
import pandas as pd
# 示例数据源1
df1 = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6]
})
# 示例数据源2
df2 = pd.DataFrame({
'A': [7, 8, 9],
'B': [10, 11, 12]
})
# 添加前缀区分数据源
df1_prefixed = df1.add_prefix('source1_')
df2_prefixed = df2.add_prefix('source2_')
# 合并数据源
combined_df = pd.concat([df1_prefixed, df2_prefixed], axis=1)
print(combined_df)
输出:
'''
source1_A source1_B source2_A source2_B
0 1 4 7 10
1 2 5 8 11
2 3 6 9 12
'''
通过给不同数据源的列名添加前缀,可以轻松区分它们。
add_prefix()
是一个灵活的工具,能够在 DataFrame 和 Series 的标签上添加前缀。通过灵活使用 axis
参数,可以选择在列标签或索引标签上添加前缀,方便在处理和分析数据时做出区分和标记。
更新时间:2024-08-09 08:08:18 标签:pandas python add_prefix 前缀 索引