我的数据框中有 6 列。其中 2 个有大约 3K 的唯一值。当我get_dummies()
在整个数据框或仅在其中一个 2 列上使用时,返回的是具有 3k 值的完全相同的列。get_dummies
无法模拟更大的列。有些列确实会进行一次热编码,但大的则不会。
我想知道 get_dummies 是否仅适用于基数较小的集合。
我相信这也在这里讨论过: Need help with python(pandas) script
我的数据框中有 6 列。其中 2 个有大约 3K 的唯一值。当我get_dummies()
在整个数据框或仅在其中一个 2 列上使用时,返回的是具有 3k 值的完全相同的列。get_dummies
无法模拟更大的列。有些列确实会进行一次热编码,但大的则不会。
我想知道 get_dummies 是否仅适用于基数较小的集合。
我相信这也在这里讨论过: Need help with python(pandas) script
它似乎按我的预期工作。
考虑一系列s
随机的 3 个字符串
import pandas as pd
import numpy as np
from string import lowercase
np.random.seed([3,1415])
s = pd.DataFrame(np.random.choice(list(lowercase), (10000, 3))).sum(1)
s.nunique()
7583
然后分配数据框df
df = s.str.get_dummies()
df.shape
(10000, 7583)
df.sum(1).describe()
count 10000.0
mean 1.0
std 0.0
min 1.0
25% 1.0
50% 1.0
75% 1.0
max 1.0
dtype: float64