小编Har*_*mer的帖子

R:在同一数据表中合并行,连接某些列

我在R中有我的数据表.我想合并具有相同的行customerID,然后连接其他合并列的元素.

我想离开这个:

   title  author customerID
1 title1 author1          1
2 title2 author2          2
3 title3 author3          1
Run Code Online (Sandbox Code Playgroud)

对此:

           title           author Group.1
1 title1, title3 author1, author3       1
2         title2          author2       2
Run Code Online (Sandbox Code Playgroud)

merge r concatenation

10
推荐指数
1
解决办法
1万
查看次数

在聚合数据帧之后,如何将rownames列表作为值?

我有一个像这样的数据帧:

    type    V1    V2
1    A    bla    bla
2    A    bla    bla
3    B    bloo    bla
4    B    bloo    bla
5    C    moo    bloo
6    C    moo    bloo
Run Code Online (Sandbox Code Playgroud)

目前我融化/施法得到这个:

type    bla    bloo    moo
A    4    0    0
B    2    2    0
C    0    2    2
Run Code Online (Sandbox Code Playgroud)

使用这些命令:

library(reshape)
melted <- melt(df, id='type')
count <- function(x) { 
  length(na.omit(x))
}
casted <- cast(melted, type~value, count)
Run Code Online (Sandbox Code Playgroud)

然而,我想获得原始rownames的列表而不是计数/求和.像这样的东西:

type    bla    bloo    moo
A    1,2    0    0
B    3,4    3,4    0
C    0    5,6    5,6
Run Code Online (Sandbox Code Playgroud)

其中bla,bloo和moo的每个值都是原始数据框中唯一的rownames列表. …

r reshape

8
推荐指数
1
解决办法
117
查看次数

计算按列值链接的项目对

我在R中努力解决这个问题.我有这样的数据:

item   id
1      500
2      500
2      600
2      700
3      500
3      600

data.frame(item = c(1, 2, 2, 2, 3, 3),
           id = c(500, 500, 600, 700, 500, 600))
Run Code Online (Sandbox Code Playgroud)

我想计算一对项链接到同一个id的次数.所以我想要这个输出:

item1    item2    count
    1        2        1
    2        3        2
    1        3        2
Run Code Online (Sandbox Code Playgroud)

我试过用以下命令来解决这个问题:

x_agg = aggregate(x, by=list(x$id), c)
Run Code Online (Sandbox Code Playgroud)

然后

x_agg_id = lapply(x_agg$item, unique)
Run Code Online (Sandbox Code Playgroud)

以为我可以计算每个项目的出现次数.但该by函数似乎创建了一个列表对象,我不知道如何操作.我希望有一个更简单的方法....

r aggregation

5
推荐指数
1
解决办法
714
查看次数

如何制作一组全对一组的散点图 - 针对一个目标列的列列表

我想针对同一个目标变量绘制一堆变量。所以是一种散点矩阵,但使用 list_of_df_columns-vs-one_df_column 而不是 all-vs-all。

我已经在一个循环中一个一个地添加子图,但似乎必须有更好的方法。有什么方法可以使用 scatter_matrix 函数来做到这一点吗?

我想针对单个结果绘制数十个变量,我真的希望结果既美观又紧凑,以便它们可以作为单个图形呈现。

matplotlib pandas

5
推荐指数
2
解决办法
4405
查看次数

寻找一种简单的机器学习方法来预测训练集的期末考试成绩

我试图根据已知的先前分数预测测试重新计算.测试由三个科目组成,每个科目都有助于期末考试成绩.对于所有学生,我在三门科目中都有他们以前的迷你考试成绩,我知道他们有哪位老师.对于一半的学生(训练集)我得到他们的最终得分,而另一半我没有(测试集).我想预测他们的最终得分.

所以测试集看起来像这样:

student teacher subject1score subject2score subject3score finalscore
Run Code Online (Sandbox Code Playgroud)

而测试集是相同但没有最终得分

student teacher subject1score subject2score subject3score 
Run Code Online (Sandbox Code Playgroud)

所以我想预测测试集学生的最终得分.是否有使用简单学习算法或统计技术的想法?

statistics machine-learning data-modeling data-mining prediction

4
推荐指数
1
解决办法
1358
查看次数

如何计算数据框中分组行集合之前的差异

我正在寻找Pandas中同时分组/行上行差异问题的帮助.问题与R中所述完全相同:如何计算每个组(学生合同)的日期时间之间的时差?

我有这样的数据:

#   USER_ID CONTRACT_REF SUBMISSION_DATE  
1        1        A        20/6 01:00   
2        1        A        20/6 02:00   
3        1        B        20/6 03:00   
4        4        A        20/6 04:00   
5        5        A        20/6 05:00   
6        5        B        20/6 06:00   
7        7        A        20/6 07:00   
8        7        B        20/6 08:00   
9        7        B        20/6 09:30   
10       7        B        20/6 10:00   
Run Code Online (Sandbox Code Playgroud)

我想计算每个唯一USER_ID - CONTRACT_REF对的上一次提交的时间差.

注意:每个USER_ID - CONTRACT_REF对的第一次出现必须为零(或为null).

因此输出应如下所示:

#   USER_ID CONTRACT_REF SUBMISSION_DATE   TIME_DIFFERENCE
1        1        A        20/6 01:00             0
2        1        A …
Run Code Online (Sandbox Code Playgroud)

python pandas

3
推荐指数
1
解决办法
1308
查看次数