我有一个5列和大约50行的Pandas数据框。由于某些行具有相同的名称,因此我想编辑这些行,并在索引8到13的行之间添加“ age_”作为前缀。我该怎么做?

现在,我正在做的是将其一一重命名,这很不方便。有更简单的方法吗?

我现在正在做什么:

df2.Tracking_Measure.iloc[8] = 'age_ExposureTarget'
df2.Tracking_Measure.iloc[9] = 'age_ExposureActual'
df2.Tracking_Measure.iloc[10] = 'age_UVTarget'


如果我不清楚,请告诉我!不好意思!

最佳答案

在值重新分配的一般情况下,您可以使用索引列表调用iloc并为其分配一个列表:

to_update = ['x', 'y', 'z']
df2.iloc[[8, 9, 10], df.columns.get_loc('Tracking_Measure')] = to_update




假设您要向列添加前缀,则可以简化为

r, c = [8, 9, 10], df.columns.get_loc('Tracking_Measure')
df2.iloc[r, c] = 'age_' + df2['Tracking_Measure']


要么,

df2.iloc[r, c] = 'age_' + df2.iloc[r, c]

关于python - 重新分配 Pandas 数据框中的值范围?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56590949/

10-12 14:01