我有一个名为"merged"的数据集,其中包含3个数字列"pauseMedian"和"numTotalPauses"和"diff".我还有一个splineHull数据集,它还包含数字列"pauseMedian"和"numTotalPauses",以及一个6级因子"microstyle"
我有以下代码,它完美地运行.它绘制一个散点图,然后用splineHull多边形覆盖它,根据"microstyle"颜色.
脚本1:
ggplot(data=merged,aes(x = pauseMedian, y = numTotalPauses))
+ geom_point()
+ geom_polygon(data = splineHull,
mapping=aes(x=pauseMedian,
y=numTotalPauses,
group=microstyle,
color = microstyle),
alpha=0)
Run Code Online (Sandbox Code Playgroud)
然后,我还想通过添加一个属性color = diff来更改散点图中点的颜色.
脚本2:
ggplot(data=merged,aes(x = pauseMedian, y = numTotalPauses, color = diff))
+ geom_point()
+ geom_polygon(data = splineHull,
mapping=aes(x=pauseMedian,
y=numTotalPauses,
group=microstyle,
color = microstyle),
alpha=0)
Run Code Online (Sandbox Code Playgroud)
我看到以下错误:
Error: Discrete value supplied to continuous scale
Run Code Online (Sandbox Code Playgroud)
我不知道为什么我会看到这个错误.如果我仍然想要彩色散点图但没有多边形,我运行以下代码再次工作.
脚本3:
ggplot(data=merged,aes(x = pauseMedian, y = numTotalPauses, color = diff))
+ geom_point()
Run Code Online (Sandbox Code Playgroud)
那么,脚本2发生了什么,错误来自何处,以及如何使其工作?
在我的研究背景下,我总是使用"with"而不是"within",但我原本以为它们是相同的.刚才我错误地将"with"改为"within"并且返回的结果完全不同.我想知道为什么?
我正在使用plyr包中的棒球数据,所以我首先加载库
require(plyr)
Run Code Online (Sandbox Code Playgroud)
然后,我想选择ID为" ansonca01 "的所有行.首先,正如我所说,我使用" 内部 ",并运行如下函数:
within(baseball, baseball[id=="ansonca01", ])
Run Code Online (Sandbox Code Playgroud)
我得到了非常奇怪的结果,基本上包括一切:
id year stint team lg g ab r h X2b X3b hr rbi sb cs bb so ibb hbp sh sf gidp
4 ansonca01 1871 1 RC1 25 120 29 39 11 3 0 16 6 2 2 1 NA NA NA NA NA
44 forceda01 1871 1 WS3 32 162 45 45 9 4 0 29 8 0 4 0 NA NA NA NA NA …Run Code Online (Sandbox Code Playgroud) 我想拍一张youtube视频的缩略图,比如http://www.youtube.com/watch?v=ffaTjpA1scI 30s或120s.我怎么能用youtube API做到这一点?
我认为这是可能的,因为当我观看Youtube视频时,如果我将光标移动到时间线,我可以立即在特定时间看到快照.我只想以编程方式检索这些快照.
我也尝试了http://img.youtube.com/vi/ /0.jpg,实际上这可以获得缩略图,但它无法在特定时间获取快照.
我说有一根绳子
fruit <- "()goodapple"
Run Code Online (Sandbox Code Playgroud)
我想删除字符串中的括号.我决定使用stringr包,因为它通常可以处理这类问题.我用 :
str_replace(fruit,"()","")
Run Code Online (Sandbox Code Playgroud)
但没有任何东西被替换,以下内容被替换:
[1] "()good"
Run Code Online (Sandbox Code Playgroud)
如果我只想更换右半支架,它可以工作:
str_replace(fruit,")","")
[1] "(good"
Run Code Online (Sandbox Code Playgroud)
但是,左半支架不起作用:
str_replace(fruit,"(","")
Run Code Online (Sandbox Code Playgroud)
并显示以下错误:
Error in sub("(", "", "()good", fixed = FALSE, ignore.case = FALSE, perl = FALSE) :
invalid regular expression '(', reason 'Missing ')''
Run Code Online (Sandbox Code Playgroud)
任何人都有想法为什么会这样?如何删除字符串中的"()"呢?
我正在为iOS编程,并使用ARC.
我试图使用c数组作为属性,但它报告错误.
@property (strong, nonatomic)NSString *mappingTable[70][254];
Run Code Online (Sandbox Code Playgroud)
错误是"Property cannot have array or function type NSString *[70][254]".我怎么解决这个问题?如何将c-array声明为属性?
注意:
这是一个二维数组,我认为使用c-array要容易得多,所以我没有使用NSArray.
我正在使用javafx 2.2.我有一个圆形物体,随着鼠标的移动而移动.但是,场景中有新对象.我想将这个对象始终放在其他对象之上.
使用OPENGL,您只需在渲染循环中的每一帧中绘制此圆圈,但使用JavaFX,如何实现?
list1 = [1,"3",2323,"pause"]
list2 = ["2","4","5"]
print ",".join(list1)
print ",".join(list2)
Run Code Online (Sandbox Code Playgroud)
对于上面的代码,list2可以毫无问题地连接元素.但list1报告的加入错误
TypeError: sequence item 0: expected string, int found
Run Code Online (Sandbox Code Playgroud)
我知道join这只适用于字符串,那么如何连接不同类型的列表元素?
我正在使用Mac,我使用自制软件来安装zeromq.我想在我的应用程序中使用zeromq.我试图编译zmq.hpp https://github.com/zeromq/cppzmq/blob/master/zmq.hpp 与
int main () {
// Prepare our context and socket
zmq::context_t context (1);
zmq::socket_t socket (context, ZMQ_REP);
socket.bind ("tcp://*:5555");
while (true) {
zmq::message_t request;
// Wait for next request from client
socket.recv (&request);
std::cout << "Received Hello" << std::endl;
// Do some 'work'
sleep (1);
// Send reply back to client
zmq::message_t reply (5);
memcpy ((void *) reply.data (), "World", 5);
socket.send (reply);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但它失败了.错误显示
"frameworks/zmq/zmq.hpp:377:35:错误:预期';' 在声明列表末尾socket_t(const socket_t&)ZMQ_DELETED_FUNCTION; ^; frameworks/zmq/zmq.hpp:379:42:error:expected';' 在声明列表末尾void operator =(const socket_t&)ZMQ_DELETED_FUNCTION;" …
我有一个名为intraPByGroup的R数据框,如下所示:
group, week1, week2, week3, week4
kiwi,23,43,54,23
eggplant,22,32,33,63
jasmine,23,454,12,654
coconut,32,56,22,31
Run Code Online (Sandbox Code Playgroud)
我想要做的是创建一个新的数据框,如下所示
user,week1,week2,week3,week4
eggplantA,22,32,33,63
eggplantB,22,32,33,63
eggplantC,22,32,33,63
jasmineA,23,454,12,654
jasmineB,23,454,12,654
jasmineC,23,454,12,654
Run Code Online (Sandbox Code Playgroud)
基本上,这个想法是:从原始数据集中,我选择两个组(茄子和茉莉),我想创建一个新的数据帧.这个新数据框有"user"变量而不是"group".每个用户名实际上是"groupname + A(B或C)",并且对于同一组中的所有用户,所有其余值都是重复的.
我该如何在R中做到这一点?
我想首先删除组名并选择一行,然后组成一个新行,然后对每个选定的组重复执行此操作.
eggFrame <- intraPByGroup[intraPByGroup$group=="eggplant",-1]
eggFrame1 <- eggFrame
eggFrame1["user"] <- "Eggplant-A"
eggFrame2 <- eggFrame
eggFrame2["user"] <- "Eggplant-B"
total <- rbind(eggFrame1,eggFrame2)
Run Code Online (Sandbox Code Playgroud)
我认为反复做rbind是愚蠢的,即使这样,还有其他更快的方法吗?
r ×4
akka-zeromq ×1
c++ ×1
cocoa-touch ×1
environment ×1
ggplot2 ×1
ios ×1
javafx-2 ×1
javafx-8 ×1
objective-c ×1
python ×1
python-2.7 ×1
stringr ×1
youtube ×1
youtube-api ×1
zeromq ×1