我按照这个例子,server.R,文件在这里.
我打算做一个类似的过滤器,但我失去了什么%>%.
# Apply filters
m <- all_movies %>%
filter(
Reviews >= reviews,
Oscars >= oscars,
Year >= minyear,
Year <= maxyear,
BoxOffice >= minboxoffice,
BoxOffice <= maxboxoffice
) %>%
arrange(Oscars)
Run Code Online (Sandbox Code Playgroud) 我正在R中运行一个示例,完成这些步骤,到目前为止一切正常,除非此代码产生错误:
words <- dtm %>%
as.matrix %>%
colnames %>%
(function(x) x[nchar(x) < 20])
Run Code Online (Sandbox Code Playgroud)
错误:找不到函数"%>%"
我不明白使用这个特殊操作符的好处是什么
%>%,任何反馈都会很棒.
试图计算R中矩阵的幂,我发现包expm实现了运算符%^%.
所以x%^%k计算矩阵的k次方.
> A<-matrix(c(1,3,0,2,8,4,1,1,1),nrow=3)
> A %^% 5
[,1] [,2] [,3]
[1,] 6469 18038 2929
[2,] 21837 60902 9889
[3,] 10440 29116 4729
Run Code Online (Sandbox Code Playgroud)
但令我惊讶的是:
> A
[,1] [,2] [,3]
[1,] 691 1926 312
[2,] 2331 6502 1056
[3,] 1116 3108 505
Run Code Online (Sandbox Code Playgroud)
不知何故,初始矩阵A已变为A%^%4 !!!
你如何执行矩阵功率操作?
该dplyr软件包引入了%.%操作符,将左侧作为右侧函数的参数传递,类似于*NIX管道.该magrittr软件包是一个更轻量级的软件包,仅用于定义类似管道的操作员.
然而一个人使用%.%另一个人%>%.
这两者有什么区别吗?我%>%可以在dplyr代码中使用甚至是否会导致细微的错误?
在检查代码时,它们在早期就采用了截然不同的路径,因此简单的眼球比较表明它们是不同的.当我在网上搜索它时,我无法找到任何记录,也没有在文档本身中遇到任何问题.
我的问题可能听起来很愚蠢,但我注意到.并%经常使用R并坦率地说我不知道为什么使用它.
我已经看到了dplyr(去这里作为例子)和data.table(即.SD),但我相信它也必须在其他地方使用.
因此,我的问题是:
.意思?它是某种R编码最佳实践术语吗?(即_functionName通常用于javascript表示它是私人功能).如果是,那么规则是什么?%,这也常常R中使用(即%in%,%>%,...).我的猜测始终一直是.和%是一种方便的方式来快速调用功能,但方式data.table使用.不遵循这个逻辑,这混淆了我.
我使用以下代码绘制2 geom_point图:
source("http://www.openintro.org/stat/data/arbuthnot.R")
library(ggplot2)
ggplot() +
geom_point(aes(x = year,y = boys),data=arbuthnot,colour = '#3399ff') +
geom_point(aes(x = year,y = girls),data=arbuthnot,shape = 17,colour = '#ff00ff') +
xlab(label = 'Year') +
ylab(label = 'Rate')
Run Code Online (Sandbox Code Playgroud)
我只是想知道如何在右侧添加图例.具有相同的形状和颜色.三角粉色应该有传说中的"女人"和蓝色圆圈的传说"男人".看起来很简单但经过多次试验我无法做到.(我是ggplot的初学者).

我想将我的json数据转换为R中的数据框.这是我到目前为止所做的:
library("rjson")
result <- fromJSON(file ="mypath/data.json")
json_data_frame <- as.data.frame(result)
Run Code Online (Sandbox Code Playgroud)
但是,它会出现这样的错误:
data.frame中的错误(company_id ="12345678",country_name ="China",:参数意味着行数不同:1,2,0
我也尝试了以下代码:
library("rjson")
result <- fromJSON(file ="mypath/data.json")
final_data <- do.call(rbind, result)
Run Code Online (Sandbox Code Playgroud)
这个错误出现了:
警告消息:在(function(...,deparse.level = 1)中:结果列数不是向量长度的倍数(arg 3)
我不知道这里发生了什么,我怎么解决它.如果我能得到一些帮助,我将不胜感激.
以下是我的json数据的一些部分:
{"business_id":"1234567","Country_name":"中国","小时":{"星期一":{"关闭":"02:00","开放":"11:00"},"星期二":{"close":"02:00","open":"11:00"},"星期五":{"关闭":"02:00","打开":"11:00"}, "星期三":{"关闭":"02:00","打开":"11:00"},"星期四":{"关闭":"02:00","打开":"11:00" },"星期日":{"关闭":"02:00","打开":"12:00"},"星期六":{"关闭":"02:00","打开":"12: 00"}},"open":true,"categories":["Bars","Nightlife","Restaurants"],"city":"Beijing","review_count":5,"name":"陈氏酒吧","邻里":["West End"],"attributes":{"Take-out":true,"Wi-Fi":"free","Good For":{"dessert":false,"latenight" ":false,"午餐":假,"吃饭":假,"早餐":假,"早午餐":假,"好跳舞":虚假,"噪音等级":"响亮","需要预约" :false,"Delivery":false,"Ambience":{"romantic":false,"intimate":false,"classy":false,"hipster":false,"divey":false,"touristy":false, "时髦":虚假,"高档":虚假,"随意":虚假},"欢乐时光":真实,"停车":{"车库":虚假,"街道":虚假,"验证":虚假,"很多":虚假,"代客":虚假},"有电视":是的, "户外座位":虚假,"服装":"休闲","酒精":"full_bar","服务员服务":真实,"接受信用卡":真实,"对孩子有益":虚假,"适合团体":true,"Caters":true,"Price Range":1},"type":"business"}
我想知道这个,%>%所以我输入?%>%控制台并得到:
Error: unexpected SPECIAL in "?%>%".很公平.所以我键入?"%>%"并获得以下内容:
%>% package:tidyr R Documentation
Pipe operator
Description:
See ‘%>%’ for more details.
Usage:
lhs %>% rhs
Run Code Online (Sandbox Code Playgroud)
好吧!?'%>%'但是,打字会引导我进入完全相同的帮助页面.我的错是什么?
不需要解释管道操作员,我现在用Google搜索了,但我会做什么,是我在没有互联网的火车上?
编辑.我觉得这个问题有点误导,所以让我重新说一下.如何%>%在R的帮助文档中找到管道操作员的相应文档?如果文档告诉我"查看...以获取更多详细信息",这究竟是什么意思?那我该怎么办?