python - 如何在熊猫中仅在一个级别中创建组
问题描述
我在我的 excel 文件中导入以下 df3 数据框,并且只想对名称和其他重复数据进行 grouby 反映,如下所示。
注意(每个月的数据将按月添加。)
Df3 =pd.read_Excel('Data')
print (df3)
Name ID Month Shift
Jon 1 Feb A
Jon 1 Jan B
Jon 1 Mar C
Mike 1 Jan A
Mike 1 Jan B
Jon 1 Feb C
Jon 1 Jan A
我想以相同的格式输出如下所示。请帮助我,就像我被困在这里一样。
将非常感谢您的帮助和支持。
解决方案
你可以通过
df=df.iloc[pd.to_datetime(df.Month,format='%b').argsort()]
df=pd.concat([pd.DataFrame({'Month':[x] }).append(y).fillna('').append(pd.DataFrame(dict.fromkeys(y.columns,['']))) for x , y in df.groupby('Name')]).drop('Name',1).iloc[:-1]
print(df)
Month ID Shift
0 Jon
1 Jan 1 B
6 Jan 1 A
0 Feb 1 A
5 Feb 1 C
2 Mar 1 C
0
0 Mike
3 Jan 1 A
4 Jan 1 B
推荐阅读
- ios - 如何使用swift等待来自api响应的值以进行登录视图
- reactjs - useRef.current.contains 不是函数
- rest - 我怎样才能在春天得到特定的变量?
- javascript - 使用打字稿文件进行 Jest 配置
- java - 尝试打印包含来自 JavaFx 的图像的节点时的像素化结果
- json - 如何在 powershell 中获取 azure arm 模板的解释值(ex concat)
- javascript - MapKit.js 中的缩放和位置管理
- javascript - 为什么在 angularjs 指令链接函数中未定义双向绑定?
- java - 运行 ant 在 mac 上安装 netbeans:Buildfile:build.xml 不存在!构建失败
- c# - Azure Functions,如何拥有多个 .json 配置文件