我有个问题问得我头晕目眩。 假设我有下一个数据帧:
df2 = pd.DataFrame(np.random.randint(0,3,size=(10, 4)),columns=['ONE', 'TWO', 'CARS', 'FOUR'])
df2['NAMES'] = ['Peter','Jon','Mary','Mary','Peter','Peter','BONIFACE','Michael','Lucy','Gilari']
df2['CARS'] = ['Mercedes','BMW','Ford','BMW','BMW','Dacia','Ford','Pontiac','Chevrolet','Tesla']
例如,我把它按汽车分类。你知道吗
agrupe = df2.groupby(['CARS'])
问题是,一旦我对它进行了分组,我就想用它来操作,例如在BMW制造的组中,我想从列1上有2的元素中,将列2的值赋给列4。让我们看看我是否学会操作它:
g = agrupe.get_group('BMW')
从这个开始
ONE TWO CARS FOUR NAMES
1 1 0 BMW 1 Jon
3 2 1 BMW 1 Mary
4 0 1 BMW 0 Peter
对此:
ONE TWO CARS FOUR NAMES
1 1 0 BMW 1 Jon
3 2 1 BMW 1 Mary
4 0 1 BMW 1 Peter
似乎您需要带有自定义函数} :
f
的^{更好的解决方案是首先选择列
CARS
为BMW
且列ONE
为2
的所有行,然后按列TWO
更改FOUR
:或者如果需要更改列
ONE
中的2
,则按列TWO
更改列FOUR
:相关问题 更多 >
编程相关推荐