Redian新闻
>
请教问题 R list of list to vector to data frame
avatar
请教问题 R list of list to vector to data frame# DataSciences - 数据科学
t*s
1
首先邀请大家祝福楼主又要失业了。
楼主是个苦逼毕业生,而且是专科的。但是学的是服装设计,如果真想认真的走这个行
业还要去留个学镀个金。可是……楼主穷……所以就想找份差不多的工作先挣点银子然
后慢慢找自己的方向。后来楼主在各个招聘网上投了自己的简历,就有一个外包公司给
楼主打了电话,之前楼主一直都不知道外包公司是个什么东西,刚好有朋友在外包公司
招人,就提楼主分析了一下这个公司,觉得还可以就进去了,最近才发现……真不是东
西……
楼主是被外派到了房地产公司做审图,最近这个公司的主管找我们私聊,说是我们这些
外包的员工可能他们不能继续聘用了,对外说是工作量没那么大用不了那么多人了,实
际上是因为他们用不起我们了,详细说就是这家公司要给外包公司钱,然后外包公司再
给我们发工资,但是外包公司向他们要的每个人的钱比主管还多,但是发到我们手里的
工资只有一半。而且如果这里辞退了我们,现在是年底还不知道他们能不能继续给我们
找到工作!楼主现在真的很想骂街啊!
avatar
s*h
2
R新手,有几个问题,一起请教一下:
我想建一个data frame,有7个columns.
因为数据量相对R来说比较大(0.5M users, each with 50 items),用个loop,一次做
500个users
allres for i{
create df
allres[i] }
For each user,take first 50 items. (自己瞎弄的一个推荐系统,和classic user
based, item based有些不一样)
df has 50 X 1000 rows, and 7 variable (v1 - v7)
我打算每个variable弄一个vector,然后combine成df
可是有些variable我只会弄成list。例如,我是这么create 50 X 1000个double
variable for v2的:
v2 [email protected]@[email protected][2], FUN=function(i) { c([email protected]
[i, [email protected][[i]]], rep(0, topn - length([email protected][[i]]))) } )
问题1:
typeof(c([email protected][i, [email protected][[i]]], rep(0, topn - length([email protected]
items[[i]]))))
double
typeof(v2[[i]])
double
How to create double vector v2,or how to convert list v2 to a vector?
问题2: 把 allres list concat成一个data frame,用rbindlist应该可以吧?
dfall 问题3: 假如dfall已经建好了。
dfall有7个variable,其中包括userid, itemid, rank (from 1 to 50) of the
itemid for the userid。假设还有v4,v5,v6。
create a new data frame from dfall,with 2 new variables
需要
1. new variable 1 (v8) : 用一个function F, newVariable 2. new variable 2 (v9) : 用newVariable 1对每个user的items重新排序,item的
rank 就是 new variable 2
3. 基于v1-v9的filter
多谢了
avatar
Y*a
3
my guess is:
[email protected]@[email protected][2] = 50
topn = 1000
Q1: length(v2) = 50, length(v2[[1]]) = 1000
v2 Q2: assume now your create df returns a data.frame of dim 50,000 x 7
dfall Q3:
dfall$v8 dfall$v9 for (u in userIDs) {
for (i in itemIDs) {
idx dfall$v9[idx] }
}
avatar
Y*a
4
btw, 有必要把数据结构搞得这么复杂么?自己给自己挖坑啊?
avatar
s*h
5
多谢回复
我没怎么用过R,要用它的一个package,所以就胡乱对付着用。
用lapply,v2就成list了。
avatar
v*e
6
千万不要用R来处理数据变换之类的东西。
分分钟后悔。
R只用于读入data frame,然后call regression functions。
avatar
Y*a
7
这位同学,就算你对R有成见,也不要这么误导人好不好?
你只会用"R只用于读入data frame,然后call regression functions", 不代表R就只
能干这个
R的数据变换很强大的,你不会用罢了。

【在 v*******e 的大作中提到】
: 千万不要用R来处理数据变换之类的东西。
: 分分钟后悔。
: R只用于读入data frame,然后call regression functions。

avatar
Y*a
8
我是说你的 @[email protected]@item 那部分
除了lapply,还有sapply可以用

【在 s****h 的大作中提到】
: 多谢回复
: 我没怎么用过R,要用它的一个package,所以就胡乱对付着用。
: 用lapply,v2就成list了。

avatar
Y*a
9
其实0.5M x 50不是很大,R应该可以处理,但是你的程序很可能不efficient,毕竟是
新手,所以会很慢
avatar
v*e
10

我第一次用R的时候,那两个assistant professor还在新西兰教书呢。这么多年用R下
来,这是我最有用的结论。

【在 Y****a 的大作中提到】
: 这位同学,就算你对R有成见,也不要这么误导人好不好?
: 你只会用"R只用于读入data frame,然后call regression functions", 不代表R就只
: 能干这个
: R的数据变换很强大的,你不会用罢了。

avatar
g*y
11
Try plyr...

user

【在 s****h 的大作中提到】
: R新手,有几个问题,一起请教一下:
: 我想建一个data frame,有7个columns.
: 因为数据量相对R来说比较大(0.5M users, each with 50 items),用个loop,一次做
: 500个users
: allres : for i{
: create df
: allres[i] : }
: For each user,take first 50 items. (自己瞎弄的一个推荐系统,和classic user

avatar
d*e
12
哪两个?

就只

【在 v*******e 的大作中提到】
:
: 我第一次用R的时候,那两个assistant professor还在新西兰教书呢。这么多年用R下
: 来,这是我最有用的结论。

avatar
v*e
13

还能有哪两个? Ross Ihaka,Robert Gentleman

【在 d******e 的大作中提到】
: 哪两个?
:
: 就只

avatar
z*h
14
No one knows about data.table and dplyr?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。