Python中文
首页
教程
问答
标签
搜索
登录
注册
Pandas:如何自动创建循环,为不同的组创建多个列联表?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我需要创建列联表,但我只知道如何单独创建</p> <p>我创建了一个数据帧(<code>df</code>),其中包含关于一个<code>disease</code>、<code>age</code>和<code>delta</code>的信息(预测年龄和实际年龄之间的差异,其中“0”、“1”和“-1”是正常/过/欠年龄)</p> <p><code>df = pd.DataFrame(np.array([[50,0,0],[42,1,1],[25,0,0], [25,1,1],[42,-1,0],[25,0,0]]),columns=['age', 'delta', 'disease'])</code></p> <p>在此之后,我想与25岁的人一起创建<code>df</code>,为此我要:</p> <p><code>df25 = df.loc[df['age'] == 25]</code></p> <p>之后,我可以通过以下方式创建列联表:</p> <p><code>pd.crosstab(index=df25['disease'], columns=df25['delta'])</code></p> <p>现在表已经准备好了,但是我真正的<code>df</code>太大了,有很多独特的年龄。我试图创建循环,但没有成功。你能帮我把这个过程自动化吗?我需要适合每个年龄段的桌子</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>所有列联表均为d</p> <pre><code>d=dict() for age,values in df.groupby("age"): d.update({f"df{age}":pd.crosstab(index=values["disease"],columns=values["delta"])}) </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何将Python中的列表复制到给定的目标中?
9 回答
如何将python中的列表插入SQL表
5 回答
如何将python中的列表转换为numpy数组以放入十位
7 回答
如何将python中的列表输入javascript?
8 回答
如何将python中的列表返回给dag?
9 回答
如何将Python中的列表项重新排列成成对的元组/列表?
3 回答
如何将Python中的初始化对象序列化为XML?
1 回答
如何将python中的十进制字符串转换为数字?
4 回答
如何将Python中的原始输入文本转换为Tkinter中的标签?
3 回答
如何将python中的反斜杠命令转换为在Linux上运行
6 回答
如何将python中的命令行参数转换为字典?
5 回答
如何将python中的图像值传递到kivy中的kv文件?
9 回答
如何将Python中的图像数组(枕头对象)上传到Google云
5 回答
如何将Python中的图像编码为Base64?
9 回答
如何将python中的图像调整为灰度低分辨率,如MNIST时尚数据?
6 回答
如何将python中的多个html输出保存到单个文件(或多个)中?
8 回答
如何将Python中的多个ifelse语句重构为一个函数?
9 回答
如何将Python中的多处理与Django结合使用,从xml文件创建数千个模型实例?
1 回答
如何将python中的多级API响应转换为dataframe
2 回答
如何将python中的多线程编程模型转换为异步/等待模型?
10 回答