我有一个带有分组变量("Gene")和值变量("Value")的数据框:
Gene Value
A 12
A 10
B 3
B 5
B 6
C 1
D 3
D 4
Run Code Online (Sandbox Code Playgroud)
对于我的分组变量的每个级别,我希望提取最大值.因此,结果应该是一个数据框,每个级别的分组变量有一行:
Gene Value
A 12
B 6
C 1
D 4
Run Code Online (Sandbox Code Playgroud)
可以aggregate做到的伎俩?
我对R中的Reduce函数有疑问.我读了它的文档,但我仍然感到困惑.所以,我有5个基因名称的载体.例如:
v1 <- c("geneA","geneB",""...)
v2 <- c("geneA","geneC",""...)
v3 <- c("geneD","geneE",""...)
v4 <- c("geneA","geneE",""...)
v5 <- c("geneB","geneC",""...)
Run Code Online (Sandbox Code Playgroud)
我想知道哪些基因存在于至少两个载体中.有人建议:
Reduce(intersect,list(a,b,c,d,e))
Run Code Online (Sandbox Code Playgroud)
如果有人能够向我解释这个陈述是如何工作的,我将不胜感激,因为我已经看到Reduce在其他场景中使用过.
我正在尝试在 R 中调用系统函数。我使用的是 mac。如果我传递一个内置函数(例如 ln),它就没有问题:
command <- "ls"
cat(command, "\n")
try(system(command))
Run Code Online (Sandbox Code Playgroud)
我得到一个目录列表。
但是,如果我从第三方安装函数(例如二进制文件),它就不起作用(即使它在终端中起作用)。
command <- "bedtools ..."
cat(command, "\n")
try(system(command))
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
sh: bedtool..:command not found
Run Code Online (Sandbox Code Playgroud)
你认为这是一个PATH问题吗?
谢谢!
我目前正在练习用C++编写类和头文件.我有一个问题:让我们说在我的头文件中我有一个客户端可以使用的公共函数,我知道如何在相应的类中实现它.但是,让我们说这个功能分为几个步骤,可以写成我不希望用户看到的独立功能(保护知识产权).通常,对于头文件中的每个已定义函数,我都会在.cpp文件中的myClassName :: myFunctionName(参数1 ..)中编写.有没有办法只在.cpp文件中定义和使用函数?例如,我写了一个程序来查看两个单词是否是字谜(具有相同的字母).
我的头文件是:
#ifndef _Anagrams_h
#define _Anagrams_h
#include <string>
using namespace std;
class Anagrams{
public:
Anagrams(string &s);
static bool areTwoWordsAnagrams(string s1, string s2) ;
string getWord()const;
void setWord(string &s);
private:
string word;
};
#endif
Run Code Online (Sandbox Code Playgroud)
我的班级是:
#include "Anagrams.h"
#include <string>
using namespace std;
Anagrams::Anagrams(string &s){
word = s;
}
bool Anagrams::areTwoWordsAnagrams(string word1, string word2){
int sizeOfWord1 = word1.size();
int sizeOfWord2 = word2.size();
int array1[26];
int array2[26];
for (int i = 0; i < 26; i++){ //Initialize both arrays
array1[i] …Run Code Online (Sandbox Code Playgroud) 我有一个任务,我需要以计算有效的方式近似Pi.这是我的策略:我使用单位圆,等角三角形的角平分线,以及罪的定义.我画了一张图:
例如,如果我想使用六边形(6点/ 6边),我只需要计算a:( 0.5*sin(2*pi/2*x)并乘以(2*x).最后,因为Pi = Circumference/Diameter,然后我的近似Pi =多边形周长(因为Diameter = 1).
实质上:
from math import sin, pi
def computePi(x): #x: number of points desired
p = x*sin(pi/x)
print(p)
computePi(10000)
3.141592601912665
Run Code Online (Sandbox Code Playgroud)
它有效,我觉得它有效率,不是吗?感谢您的时间!
编辑:为了避免圆形,我使用阿基米德算法仅使用毕达哥拉斯理论重新编写:
码:
from math import sqrt
def approxPi(x): #x: number of times you want to recursively apply Archmidedes' algorithm
s = 1 #Unit circle
a = None; b = None;
for i in range(x):
a = sqrt(1 - (s/2)**2)
b = 1 …Run Code Online (Sandbox Code Playgroud) 我最近用Python 3.5和其他所有东西安装了Anaconda。我来自R,用于动态安装软件包。我正在尝试通过jupyter笔记本安装名为scitools的模块。我想在jupyter中重新创建它。但是,我不知道如何动态安装软件包(如果可能)。非常感谢您的帮助。谢谢!
编辑:我正在尝试使用社区推荐的conda,但是它不起作用。我正在使用Mac OSX
我正在通过引用练习类声明/实现/传递对象.这是我的主类,头文件和其他类的代码:
//Header file (Circle2.h)
#ifndef CIRCLE_H
#define CIRCLE_H
class Circle{
private:
double radius;
public:
Circle();
Circle(double newRadius);
double getArea() const;
double getRadius() const;
void setRadius(double newRadius);
};
#endif
//Main class (PassObjectByReference.cpp)
#include <iostream>
#include "Circle2.h"
using namespace std;
void printCircle(const Circle &c){
cout << "The area of the circle of " << c.getRadius() << " is " << c.getArea() << endl;
}
int main(){
Circle myCircle(5.0);
printCircle(&myCircle);
return 0;
}
//Other class (Circle2.cpp)
#include "Circle2.h"
Circle::Circle(){
radius = 1;
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用for循环在C#中创建多个数组/字典.我可以单独声明它们,但它不干净.
这是我的代码:
string[] names = ["dSSB", "dGEN", "dLYM", "dLUD", "dGGC", "dMAC", "dMMB"];
for (int i = 0; i <= names.Length; i++)
{
string building = names[i];
Dictionary<long, int> building = new Dictionary<long, int>();
}
Run Code Online (Sandbox Code Playgroud)
我试图使用存储在names数组中的名称来迭代创建数组.Visual Studio不接受已经声明的"构建".任何建议将不胜感激.谢谢!
我正在等待间隔:
chr1:004336501-004336560 0.3437
chr1:004340069-004340128 0.3437
chr1:004350335-004350394 0.3437
chr1:004354213-004354272 0.3218
chr1:004380332-004380391 0.3218
chr1:004481060-004481119 0.3218
chr1:004488728-004488787 0.3607
...
Run Code Online (Sandbox Code Playgroud)
我想得到以下内容:
chr1 004336501 004350394 0.3437
chr1 004354213 004481119 0.3218
...
Run Code Online (Sandbox Code Playgroud)
如果没有R功能,我会感到惊讶.我不想在R中使用循环,因为文件很大.我很感激任何我可以发展的建议.
谢谢!