我有两个数据框,每个数据框具有相同的变量和行长,但是类别变量(对象列)有时在一个与另一个之间具有不同的实现。
这是我的意思。
Frame 1 | categorical_1 | categorical_2 ||| Frame 2 | categorical_1 | categorical_2
row 1 | blue | flakes ||| row 1 | blue | flakes
row 2 | red | cheerios ||| row 2 | red | flakes
row 3 | blue | cheerios ||| row 3 | green | flakes
如您在上面的基本图示中所见,绿色仅出现在第二个数据框中,而欢乐时光仅出现在我的第一个数据框中。
基本上,我需要一种考虑两个数据帧(或更多个数据帧)的“变量范围”来创建虚拟变量列的方法,因此我不能只对其中两个调用pd.get_dummies
。
答案 0 :(得分:0)
熊猫没有其他功能可以帮助您完成此操作。如您所述,pd.get_dummies
只能在一个数据帧中创建虚拟变量。
数据框中是否有索引或其他ID?
如果这样做,则可以将categorical_2
子化并将它们合并到一个数据帧中。然后,您可以使用pd.get_dummies
,最后根据不同的索引或ID将其匹配回原始数据帧。
如果您不这样做,我认为处理此问题的唯一方法是手动编码。