我有与Jonathon Reinhart在此描述的相同的问题: 在重新定义时暂时禁用gcc警告
那是因为我必须使用第三方库(仅限C),它会抛出大量的警告
Warning "__always_inline" redefined [enabled by default]
Run Code Online (Sandbox Code Playgroud)
我想要的是这样的:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-W???"
#include "someheader.h"
#include "otherheader.h"
#pragma GCC diagnostic pop
Run Code Online (Sandbox Code Playgroud)
有没有办法通过gcc 禁用警告,默认情况下使用a 启用
#pragma GCC diagnostic ignored
Run Code Online (Sandbox Code Playgroud)
编辑: 这是导致警告的块(文件:compiler.h):
#if defined(__CC_ARM)
# define __always_inline __forceinline
#elif (defined __GNUC__)
# define __always_inline inline __attribute__((__always_inline__))
#elif (defined __ICCARM__)
# define __always_inline _Pragma("inline=forced")
#endif
Run Code Online (Sandbox Code Playgroud) 我目前有一个类似于此的情节:
sourceTable<-"dateValues;total;inHospital
2014-01-01; 80; 20
2014-01-02; 90; 15
2014-01-03; 98; 16
2014-01-04; 98; 17
2014-01-05; 100; 28
2014-01-06; 110; 28
2014-01-07; 122; 30
2014-01-08; 110; 25
2014-01-09; 100; 22
2014-01-00; 90; 20
2014-01-11; 90; 15
2014-01-12; 80; 13
2014-01-13; 82; 10"
timetable<-read.table(textConnection(sourceTable), sep=";", head=T, dec=",")
barplot(timetable$total, border="red", axes=FALSE, ylim=c(0, max(timetable$total)))
par(new=TRUE)
barplot(timetable$inHospital, border="blue", axes=FALSE, ylim=c(0, max(timetable$total)))
Run Code Online (Sandbox Code Playgroud)
这给了我这个情节:
有没有办法用ggplot和geom_bar这样做:
library(ggplot2)
ggplot(timetable, aes(x=dateValues, y=total))
+geom_bar(stat="identity", fill="red", colour="red")
Run Code Online (Sandbox Code Playgroud)
如何在第一个ggplot上覆盖第二个ggplot,即:
ggplot(timetable, aes(x=dateValues, y=inHospital))
+geom_bar(stat="identity", fill="red", colour="blue")
Run Code Online (Sandbox Code Playgroud) 为了从未压缩的v210(像素格式为kCVPixelFormatType_422YpCbCr10)中提取RAW图像缓冲区,我尝试按照这个伟大的帖子: 通过AVAssetReader读取样本
问题是,当涉及到startReading我的assetReader我得到了一个AVAssetReaderStatusFailed(与设定的NSMutableDictionary对象kCVPixelBufferPixelFormatTypeKey的输出设置kCVPixelFormatType_422YpCbCr10).如果我将outputSettings保留为nil,则会解析每个帧,但CMSampleBufferRef缓冲区为空.
我尝试了很多像素格式,比如
但它们都不起作用.
我究竟做错了什么?
欢迎任何评论......
这是我的代码:
/* construct an AVAssetReader based on an file based URL */
NSError *error=[[NSError alloc]init];
NSString *filePathString=[[NSString alloc]
initWithString:@"/Users/johann/Raw12bit.mov"];
NSURL *movieUrl=[[NSURL alloc] initFileURLWithPath:filePathString];
AVURLAsset *movieAsset=[[AVURLAsset alloc] initWithURL:movieUrl options:nil];
/* determine image dimensions of images stored in movie asset */
CGSize size=[movieAsset naturalSize];
NSLog(@"movie asset natual size: size.width=%f size.height=%f",
size.width, size.height);
/* allocate assetReader */
AVAssetReader *assetReader=[[AVAssetReader alloc] initWithAsset:movieAsset
error:&error]; …Run Code Online (Sandbox Code Playgroud) 我所拥有的是使用R进行机械性心脏支持的患者的Kaplan-Meier分析.
我需要的是将以下数据添加到图中(如示例中所示):
换句话说,有两组,其中一组是另一组(所有患者)的子集(移植患者).这两条曲线必须从0/0开始并且会增加.
我自己的情节是通过:
pump <- read.table(file=datafile, header=FALSE,
col.names=c('TIME', 'CENSUS', 'DEVICE'))
# convert days to months
pump$TIME <- pump$TIME/(730/24)
mfit.overall <- survfit(Surv(TIME, CENSUS==0) ~ 1, data=pump)
plot(mfit.overall, xlab="months on device", ylab="cum. survival", xaxt="n")
axis(1, at=seq(from=0, to=24, by=6), las=0)
Run Code Online (Sandbox Code Playgroud)
我该如何添加另外两条曲线?
亲切的问候约翰
样本Kaplan Meier曲线:http://i.stack.imgur.com/158e8.jpg
演示数据:
生存数据,进入泵:
Run Code Online (Sandbox Code Playgroud)TIME CENSUS DEVICE 426 1 1 349 1 1 558 1 1 402 1 1 12 0 1 84 0 1 308 1 1 174 1 1 315 1 1 734 …
我有一个类似于这样的数据框:
df<-read.csv(text="id;census;startDate;endDate
ZF001;died;16.10.2012;16.05.2015
ZF002;alive;20.10.2013
ZF003;alive;04.11.2013;
ZF004;died;11.11.2013;20.12.2014
ZF005;died;25.11.2013;16.06.2015
ZF006;alive;25.11.2014;
ZF007;survived;02.12.2014;19.01.2015
ZF008;alive;11.12.2014;
ZF009;survived;28.01.2015;12.03.2015", sep=";")
df$startDate<-as.Date(df$startDate, "%d.%m.%Y")
df$endDate<-as.Date(df$endDate, "%d.%m.%Y")
Run Code Online (Sandbox Code Playgroud)
我需要的是以下内容:一个新的数据框,其中包含先证者每年有多少天参与研究.它看起来应该类似于:
id year days
ZF001 2012 77
ZF001 2013 365
ZF001 2014 365
ZF001 2015 135
etc.
Run Code Online (Sandbox Code Playgroud) 我有两个数据框:
geodata<-read.csv(text='postalcode;latitude;longitude
7000;47.8415;16.5041
7000;47.8921;16.4011
7000;47.9400;16.5032
7071;47.8012;16.671
2443;47.9156;16.5179', sep=';', header=TRUE)
addresses<-read.csv(text='postalcode;address
2400;Lorem ipsum
7000;Dolor sit amet
2443;Consetetur sadipscing elitr
7000;Sed diam nonumy', sep=';', header=TRUE)
Run Code Online (Sandbox Code Playgroud)
我需要的是地址数据框中的两个附加列与相应的(当存在多个邮政编码行时的第一个匹配)geodata $ latitude和geodata $ longitude值.
如何加入(合并)数据框(内部,外部,左侧,右侧)?显示我正在寻找的几乎所有,除了我不想在合并的数据帧中重复行.
我试过类似的东西
# code not working... #
addresses$latitude<-geodata[addresses$postalcode==geodata$postalcode]
Run Code Online (Sandbox Code Playgroud)
我知道这真的很丑:-(
我有一个像这样的data.frame:
id<-c("001-020", "001-010", "001-051")
name<-c("Fred", "Sue", "Liam")
df<-data.frame(id, name)
Run Code Online (Sandbox Code Playgroud)
我试过了:
df[with(df, order(id)), ]
# id name
# 2 001-010 Sue
# 1 001-020 Fred
# 3 001-051 Liam
Run Code Online (Sandbox Code Playgroud)
它正确地对data.frame进行排序,但是没有触及rownames.
我如何使用id字段的升序重新排序data.frame并一次性重写rownames ?
是否可以手动将纪元日期/时间设置为0000年1月1日,因此我可以使用std :: chrono :: time_point :: time_since_epoch来计算给定日期与1月1日0000之间的差异?
我尝试了以下方法:
#include <iostream>
#include <chrono>
#include <ctime>
int main(int argc, char*argv[])
{
std::tm epochStart = {};
epochStart.tm_sec = 0;
epochStart.tm_min = 0;
epochStart.tm_hour = 0;
epochStart.tm_mday = 0;
epochStart.tm_mon = 0;
epochStart.tm_year = -1900;
epochStart.tm_wday = 0;
epochStart.tm_yday = 0;
epochStart.tm_isdst = -1;
std::time_t base = std::mktime(&epochStart);
std::chrono::system_clock::time_point baseTp=
std::chrono::system_clock::from_time_t(base);
std::time_t btp = std::chrono::system_clock::to_time_t(baseTp);
std::cout << "time: " << std::ctime(&btp);
}
Run Code Online (Sandbox Code Playgroud)
但这给了我
time: Thu Jan 1 00:59:59 1970
Run Code Online (Sandbox Code Playgroud) 我有一个像这样的数据帧(freqOvertimeHourlyData):
HOURS INTERVAL BARCOLOR
1 147 16-17 "green"
2 150 17-18 "green"
3 144 18-19 "blue"
4 149 19-20 "red"
5 139 20-21 "red"
6 101 21-22 "red"
Run Code Online (Sandbox Code Playgroud)
有没有办法geom_bar根据BARCOLOR栏中的值为条形着色?我目前的情节是这样的:
ggplot(freqOvertimeHourlyData, aes(x=INTERVAL, y=HOURS))+
geom_histogram(stat="identity")+
theme(legend.position="none")
Run Code Online (Sandbox Code Playgroud) 我想读取包含uint16_t值的二进制文件.到目前为止我所做的是:
std::ifstream is;
std::vector<char> rawfilebuffer; /* should be std::vector<uint16_t> */
is.open("uint16_t_file.raw", std::ios::binary);
is.seekg(0, std::ios::end);
size_t filesize=is.tellg();
is.seekg(0, std::ios::beg);
rawfilebuffer.reserve(filesize);
rawfilebuffer.assign(std::istreambuf_iterator<char>(is),
std::istreambuf_iterator<char>());
Run Code Online (Sandbox Code Playgroud)
使用std::istreambuf_iterator<char>不起作用(error: no matching conversion for functional-style cast from 'std::ifstream').
是否可以将istreambuf_iterator转换为uint16_t?
r ×6
c++ ×2
c++11 ×2
ggplot2 ×2
avfoundation ×1
c ×1
c++-chrono ×1
epoch ×1
gcc ×1
objective-c ×1