Python 3.x 如何通过熊猫准备纵向数据,然后从学习算法中使用?

Python 3.x 如何通过熊猫准备纵向数据,然后从学习算法中使用?,python-3.x,pandas,machine-learning,Python 3.x,Pandas,Machine Learning,我正在使用Pandas清理和准备我的数据集,以供学习算法使用,例如用于分类的随机森林或用于聚类的K-均值 我曾经有这样的数据集示例: 然而,在我的数据集中,我面对的是一种不同的类型,称为:纵向数据,如下图所示: 如您所见,对于每个实例,个人或汽车对于同一功能都有多个值,其中每个值都是在特定时间点添加的 这是数据集中编辑的示例: "ID","Temperature","***", "001","36","***", "001","36","***", "001","37","***", "001"

我正在使用Pandas清理和准备我的数据集,以供学习算法使用,例如用于分类的随机森林或用于聚类的K-均值

我曾经有这样的数据集示例:

然而,在我的数据集中,我面对的是一种不同的类型,称为:纵向数据,如下图所示:

如您所见,对于每个实例,个人或汽车对于同一功能都有多个值,其中每个值都是在特定时间点添加的

这是数据集中编辑的示例:

"ID","Temperature","***",
"001","36","***",
"001","36","***",
"001","37","***",
"001","36","***",
"002","38","***",
"002","38","***",
"002","36","***",
...
"004","37","***",
"004","37","***",
"005","36","***",
"005","36","***",
相同ID的每次重复都意味着数据采集的日期不同——在我们的例子中,数据就是温度


如何使用熊猫来准备这类数据,以便对随机森林等学习算法有用?如果熊猫没有办法,你是否建议一种能够处理此类数据的学习算法?谢谢。

您必须根据ID对分区进行分组,然后使用任何算法。此分区策略将确保每个ID CustomerID等保留在各自的培训或测试集中。

您能发布原始输入数据吗?请Hello先生EdChum。很高兴在这里见到你。我用一个样本更新了我的问题。非常感谢您总是积极而快速的回复。对于初学者,请看一下unstack文档。如果您同时发布了所需的最终数据形式,那么这个问题将更容易得到人们的回答。我只想道歉,不感谢您JohnE先生的回复。我在交叉验证的堆栈交换中提出了一个类似的问题,希望有人能从机器学习的角度找到解决方案,在建议的算法中使用这种结构。谢谢你的帮助,再次抱歉。