我有三个数据帧的二进制类型列,它们的值一起构成了有意义的数据分组。为了引用该组,我目前正在将新列编写为硬编码二进制编码,如下所示:
next_function(the_return_value)
Pandas data['type'] = data['a'] + 2 * data['b'] + 4 * data['c']
将为序列的每个不同值分配一个整数,但它似乎不适用于多列的组合。对于像这样的情况,是否有更普通的熊猫功能?如果这样的函数推广到任意数量的类别的K个不同的分类变量,而不是局限于二元变量,那将是很好的。
如果这样的事情不存在,是否会对拉取请求感兴趣?
答案 0 :(得分:1)
您可以尝试以下两种方法:
df = pd.DataFrame({'a': [1, 1, 0],
'b': [0, 1, 0],
'c': [1, 1, 1]})
>>> df
a b c
0 1 0 1
1 1 1 1
2 0 0 1
>>> ["".join(row) for row in df[['a', 'b', 'c']].values.astype(str)]
Out[22]: ['101', '111', '001']
>>> [bytearray("".join(row)) for row in df[['a', 'b', 'c']].values.astype(str)]
Out[23]: [bytearray(b'101'), bytearray(b'111'), bytearray(b'001')]
答案 1 :(得分:1)
您可能需要查看Patsy
,其中包含分类变量编码和其他与模型相关的问题:PHP type hinting。
$("Element A").after($("Element B"));
提供了不少see docs,包括: