我想data.frame根据逻辑条件从a中过滤行.我们假设我有数据框
expr_value cell_type
1 5.345618 bj fibroblast
2 5.195871 bj fibroblast
3 5.247274 bj fibroblast
4 5.929771 hesc
5 5.873096 hesc
6 5.665857 hesc
7 6.791656 hips
8 7.133673 hips
9 7.574058 hips
10 7.208041 hips
11 7.402100 hips
12 7.167792 hips
13 7.156971 hips
14 7.197543 hips
15 7.035404 hips
16 7.269474 hips
17 6.715059 hips
18 7.434339 hips
19 6.997586 hips
20 7.619770 hips
21 7.490749 hips
Run Code Online (Sandbox Code Playgroud)
我想要的是获得一个看起来相同但只有一个cell_type数据的新数据框.例如包含单元格类型"hesc"的子集/选择行:
expr_value cell_type
1 5.929771 hesc
2 5.873096 hesc …Run Code Online (Sandbox Code Playgroud) 我在MySQL中有一个非常大的测量数据表,我需要为这些值中的每一个计算百分等级.Oracle似乎有一个名为percent_rank的函数,但我找不到类似MySQL的东西.当然,我可以在Python中强制使用它,我仍然使用它来填充表格,但我怀疑这样做效率很低,因为一个样本可能有200,000个观察值.
我的情况是我的Java类需要创建大量特定类型的对象.我想给出作为参数创建的对象类的名称.另外,我需要在构造函数中为创建的类赋一个参数.我有类似的东西
class Compressor {
Class ccos;
public Compressor(Class ccos) {
this.ccos = ccos;
}
public int getCompressedSize(byte[] array) {
OutputStream os = new ByteArrayOutputStream();
// the following doesn't work because ccos would need os as its constructor's parameter
OutputStream cos = (OutputStream) ccos.newInstance();
// ..
}
}
Run Code Online (Sandbox Code Playgroud)
你有什么想法我可以解决这个问题吗?
编辑:
这是一个研究项目的一部分,我们需要评估具有多个不同输入的多个不同压缩机的性能.Class ccos是OutputStream从Java的标准库,Apache Compress Commons或lzma-java 压缩而来的.
目前我有以下似乎工作正常.其他想法是受欢迎的.
OutputStream os = new ByteArrayOutputStream();
OutputStream compressedOut = (OutputStream) ccos.getConstructor(OutputStream.class).newInstance(os);
final InputStream sourceIn = new ByteArrayInputStream(array);
Run Code Online (Sandbox Code Playgroud) 对于非描述性标题感到抱歉,但我不知道是否有一个关于我想要达到的目标的词.
我们假设我有一个不同类的名称列表
c( '1', '2', '3', '4')
Run Code Online (Sandbox Code Playgroud)
我想生成所有可能的排列对,这样就没有反向重复.所以我想拥有的是类似的东西
'1' '2'
'1' '3'
'1' '4'
'2' '3'
'2' '4'
'3' '4'
Run Code Online (Sandbox Code Playgroud)
请注意,我没有,例如'2' '1'因为我已经拥有'1' '2'.有没有一种简单的方法可以在R中实现这一目标?
看来Selenium有一个叫做的功能JavascriptExecutor,它可以直接在页面上执行JavaScript.然而,似乎我的Cucumber/Capybara测试没有这样的东西可用.如何从我的Cucumber测试中执行任意JavaScript?
Web上充满了不同语言,编译器和虚拟机的各种性能测试.然而,几乎没有任何一个使用一些真实场景来测试性能.此外,在Google上搜索这些基准测试通常只会产生几年前的基准测试,因为他们有最多的时间收集链接.
您是否有任何人真正了解不同虚拟机的当前性能?另外我特别想知道如何单声道的效果的对比于那些微软的.Net和Sun的Java,以及如何不同的虚拟机的性能近来发展的.
我目前的代码看起来像
while (very_long_loop) {
...
y1 = getSomeValue();
...
x1 = y1*cos(PI/2);
x2 = y2*cos(SOME_CONSTANT);
...
outputValues(x1, x2, ...);
}
Run Code Online (Sandbox Code Playgroud)
显而易见的优化是提前计算余弦.我可以通过使用值填充数组来做到这一点,但我想知道是否可以让编译器在编译时计算它们?
编辑:我知道C没有编译时评估,但我希望有一些奇怪和丑陋的方式来做宏.
我正在使用Python及其MySQLdb模块将一些测量数据导入Mysql数据库.我们拥有的数据量非常高(目前大约有250 MB的csv文件,还有很多其他文件).
目前我使用cursor.execute(...)导入一些元数据.这不是问题,因为这些只有少数条目.
问题是,当我尝试使用cursor.executemany()导入更大量的实际测量数据时,MySQLdb提出了一个问题.
TypeError: not all arguments converted during string formatting
Run Code Online (Sandbox Code Playgroud)
我目前的代码是
def __insert_values(self, values):
cursor = self.connection.cursor()
cursor.executemany("""
insert into values (ensg, value, sampleid)
values (%s, %s, %s)""", values)
cursor.close()
Run Code Online (Sandbox Code Playgroud)
where values是一个元组列表,每个元组包含三个字符串.任何想法可能有什么问题吗?
编辑:
这些值由.生成
yield (prefix + row['id'], row['value'], sample_id)
Run Code Online (Sandbox Code Playgroud)
然后一行读入一个列表,其中行为和迭代器来自csv.DictReader.
mysql ×2
r ×2
react-native ×2
.net ×1
c ×1
capybara ×1
combinations ×1
cucumber ×1
dataframe ×1
executemany ×1
java ×1
mono ×1
optimization ×1
percentile ×1
performance ×1
python ×1
rank ×1
reflection ×1
ruby ×1
selenium ×1
subset ×1
testing ×1