我在DataFrame中有以下数据。
<?php
}
?>
<tfoot>
我想将其转换为以下格式:
city age
mumbai 12 33 5 55
delhi 24 56 78 23 43 55 67
kal 12 43 55 78 34
mumbai 14 56 78 99 # Have a leading space
MUMbai 34 59 # Have Capitol letters
kal 11
我怎样才能做到这一点?
注意: 我已经编辑了数据,现在一些城市名称是大写字母,有些还有前导空格。我们如何将strip()和lower()函数应用于它?
答案 0 :(得分:2)
groupby
与sort=False
一起使用,以确保我们按照首次出现的顺序展示城市。 ' '.join
将字符串连接在一起。reset_index
将已放置在索引中的城市值放入适当的数据框中。df.groupby('city', sort=False).age.apply(' '.join).reset_index()
city age
0 mumbai 12 33 5 55 14 56 78 99 34 59
1 delhi 24 56 78 23 43 55 67
2 kal 12 43 55 78 34 11
对编辑的回应
df.age.str.strip().groupby(
df.city.str.strip().str.lower(),
sort=False
).apply(' '.join).reset_index()
city age
0 mumbai 12 33 5 55 14 56 78 99 34 59
1 delhi 24 56 78 23 43 55 67
2 kal 12 43 55 78 34 11