我在下面有df:
CLASS STUDENT
'math' 'Alex'
'math' 'Arthur'
'math' 'Katy'
'eng' 'Jack'
'eng' 'Jack'
'eng' 'Francy'
并且需要这样聚合:
CLASS STUDENT NEW_COL
'math' 'Alex' 'Alex', 'Arthur, Katy'
'eng' 'Jack' 'Jack','Francy'
我一直在做以下事情:
df['new_col'] = df.groupby('CLASS').STUDENT.transform(lambda series: ', '.join(series.dropna().unique()))
df.drop('STUDENT')
df.drop_duplicates()
但是似乎太矫kill过正。很可能有一种更简单或更优雅的方法来执行此操作。请假设数据框中还有其他列。任何帮助表示赞赏。
答案 0 :(得分:0)
尝试一下:
@GetMapping("/")
public String index(Model model, OAuth2AuthenticationToken authentication) {
final OAuth2AuthorizedClient authorizedClient =
this.authorizedClientService.loadAuthorizedClient(
authentication.getAuthorizedClientRegistrationId(),
authentication.getName());
String accessToken=authorizedClient.getAccessToken().getTokenValue();
System.out.println(accessToken);
model.addAttribute("userName", authentication.getName());
return "index";
}