采样、哑变量

采样

df = DataFrame(np.arange(5 * 4).reshape((5, 4)))

sampler = np.random.permutation(5)

df表如下:

       0     1     2     3

0     0     1     2     3

1     4     5     6     7

2     8     9     10   11

3     12   13   14   15

4     16   17   18   19

df.take(sampler)得到表如下:

       0     1     2     3

1     4     5     6     7

0     0     1     2     3

2     8     9     10   11

3     12   13   14   15

4     16   17   18   19

由此可知take()使得df表的每一列按照sample作为索引进行采样

 

下面是一种有放回的抽样方式

bag = np.array([5, 7, -1, 6, 4])

 

sampler = np.random.randint(0, len(bag), size=10)  #可以产生重复的索引值

 

draws = bag.take(sampler)

哑变量

df表如下

     data1  key

0      0   b

1      1   b

2      2   a

3      3   c

4      4   a

5      5   b

 

经过pd.get_dummies(df['key'],prefix='key')处理后得到

 

       key_a     key_b     key_c

0     0            1            0

1     0            1            0

2     1            0            0

3     0            0            1

4     1            0            0

5     0            1            0

转载于:https://www.cnblogs.com/yongfuxue/p/10042343.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值