我有一个巨大的df维度是(58556185 X 2)
user page like
1 A 1
1 B 1
1 C 1
2 A 1
2 C 1
3 B 1
. . .
,唯一用户和唯一页面分别为100,000和50,000 我想把它传播到
user/page
A B C ...
1 1 1 0 ...
2 1 0 1 ...
3 0 1 0 ...
.
.
我使用过此代码,适用于小型数据集
data <- data%>%
group_by(user)%>%
spread(page, like, fill = 0, drop = TRUE)
但是当应用于巨大的df时,它会出现Error: cannot allocate vector of size 21626.2 Gb
有什么建议吗?感谢
答案 0 :(得分:1)
我使用稀疏矩阵来解决这个问题。
handleMouseOver() {
this.setState({imageSrc: 'dummySrc1'});
}
handleMouseLeave() {
this.setState({imageSrc: 'dummySrc2'});
}
render() {
return(
<div onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>
<img src={this.state.imageSrc}/>
</div>
);
}