小编use*_*557的帖子

刷新缓存以防止基准测试流程

我正在运行某人的c ++代码来对数据集进行基准测试.我遇到的问题是,我经常得到第一次运行的时间,如果我再次运行相同的代码,这些数字会大幅改变(即28秒到10秒).我认为这是因为CPU的自动缓存.有没有办法刷新缓存,或以某种方式防止这些波动?

c++ benchmarking caching timing

4
推荐指数
2
解决办法
2842
查看次数

numpy 中的随机正态分布矩阵

我想生成一个矩阵 M,其元素 M(i,j) 来自标准正态分布。一种简单的方法是,

import numpy as np

A = [ [np.random.normal() for i in range(3)]    for j in range(3) ]
A = np.array(A)
print(A)

[[-0.12409887  0.86569787 -1.62461893]
 [ 0.30234536  0.47554092 -1.41780764]
 [ 0.44443707 -0.76518672 -1.40276347]]
Run Code Online (Sandbox Code Playgroud)

但是,我在玩 numpy 时遇到了另一个“解决方案”:

import numpy as np
import numpy.matlib as npm

A = np.random.normal(npm.zeros((3, 3)), npm.ones((3, 3)))
print(A)

[[ 1.36542538 -0.40676747  0.51832243]
 [ 1.94915748 -0.86427391 -0.47288974]
 [ 1.9303462  -1.26666448 -0.50629403]]
Run Code Online (Sandbox Code Playgroud)

我阅读了的文档numpy.random.normal,它说它没有阐明当传递矩阵而不是单个值时该函数如何工作。我怀疑在第二个“解决方案”中我可能会从多元正态分布中得出。但这不可能是真的,因为输入参数都具有相同的维度(协方差应该是矩阵,平均值是向量)。不确定第二个代码生成了什么。

python numpy

4
推荐指数
1
解决办法
1万
查看次数

在java中加载大型文本文件的最佳方法

我有一个文本文件,每行有一个整数序列:

47202 1457 51821 59788 
49330 98706 36031 16399 1465
...
Run Code Online (Sandbox Code Playgroud)

该文件有300万行这种格式.我必须将此文件加载到内存中并从中提取5-gram并对其进行一些统计.我确实有内存限制(8GB RAM).我试图最小化我创建的对象的数量(只有1个类,包含6个浮点变量,以及一些方法).并且该文件的每一行基本上生成该类的对象数(与#ofwords中的行的大小成比例).当C++出现时,我开始觉得Java不是一个很好的方法来做这些事情.

编辑:假设每行产生该类的(n-1)个对象.其中n是该行中由空格分隔的标记数(即1457).因此,考虑到每行10个字的平均大小,每条线平均映射到9个对象.所以,会有9*3*10 ^ 6个对象.所以,所需的内存是:9*3*10 ^ 6*(8字节obj标题+ 6 x 4字节浮点数)+(一个map(字符串,对象)和另一个映射(Integer,ArrayList(Objects))).我需要将所有内容保存在内存中,因为之后会发生一些数学优化.

java memory string

3
推荐指数
1
解决办法
2656
查看次数

如何在cpp中使用setprecision仅用于浮点数

当使用浮点数,即31.14159时,如何设置cout以在浮点上使用setprecision(4):

cout <<setprecision(4)<< 31.14159<<endl; // returns 31.14
Run Code Online (Sandbox Code Playgroud)

按原样,它用整数表示十进制数字,输出:31.14.但是,我想得到:31.1416.

c++ precision cout iomanip

3
推荐指数
1
解决办法
3279
查看次数

为什么猫的体型小于实际文件?

我想知道这里发生了什么,如果实际上我正在正确地连接文件或者正在丢失其中一些文件.因此,我想将文件夹(称为de)中的所有文件(所有txt)捕获到单个txt文件中.这是我的两种方式:

cat de/* >> de_merged_all
du -h de_merged_all
353M    de_merged_all
Run Code Online (Sandbox Code Playgroud)

现在,如果我检查文件夹de的大小,我得到:

 du -h de
 383M   de
Run Code Online (Sandbox Code Playgroud)

那么,为什么这些数字不匹配?

bash cat

3
推荐指数
1
解决办法
49
查看次数

如何在Persp R中自定义ntick

我是R 3D绘图的新手。我基本上有一个9x3的矩阵。这是我必须绘制的图:

###loads the above matrix
d2 <- read.csv("data.csv", header=T, dec=".",sep = " ")
###loads x,y,z
x <- c(2,3,4,5,6,7,8,9,10)
y <- c(3,4,10)
z <- as.matrix(d2)


persp(x, y, z,
  zlab="Score", ylab = "C", xlab="T",
  theta=40, phi=-5, ylim=c(3,10), xlim=c(2,10), 
  nticks = 5, ticktype = "detailed",  
  col="springgreen", shade=0.5)
Run Code Online (Sandbox Code Playgroud)

一切都很好,除了我对轴上的刻度不满意。

有没有一种方法可以强制x,和yz

例如,有没有办法做这样的事情x.nticks=5y.nticks=2z.nticks=7

编辑:dput(d2)输出:

structure(list(X571.4711426 = c(415.0601344, 398.2104115, 392.3533142, 
389.1941271, 388.099164, 387.919963, 387.8443483, 387.808006, 
387.8046256), X569.3318221 = c(412.6845238, 396.1001583, 390.6924488, 
387.7928128, 386.7903531, …
Run Code Online (Sandbox Code Playgroud)

plot visualization r

3
推荐指数
1
解决办法
1305
查看次数

rand() 如何在 awk 中工作

我正在尝试使用awk和对 csv 文件的第二列进行采样(任何数量的样本都可以)rand()。但是,我注意到我总是得到相同数量的样本

cat toy.txt | awk -F',' 'rand()<0.2 {print $2}' | wc -l
Run Code Online (Sandbox Code Playgroud)

我进行了探索,似乎rand()没有按我预期的那样工作。例如,下面的 a 似乎总是 1,

cat toy.txt | awk -F',' 'a=rand() a<0.2 {print a}' 
Run Code Online (Sandbox Code Playgroud)

为什么?

shell awk

3
推荐指数
1
解决办法
1131
查看次数

克隆一个版本并删除所有提交历史

我正在发布一个可供公众访问的私有存储库。我需要发布一个特定版本的 repo(我的报告所基于的版本),然后从这个发布的版本中删除所有提交历史。

一个简单的解决方案是先克隆版本,然后从克隆的项目中删除所有 git 足迹并将其作为新项目推送到某个地方。但是我想知道是否有其他更专业的方法来做到这一点。

git

2
推荐指数
1
解决办法
373
查看次数

在Java中删除字符串中第一个单词的最佳方法

摆脱字符串中第一个标记的最快方法是什么?到目前为止,我试过这个:

String parentStringValue = this.stringValue.split(" ", 2)[1];
Run Code Online (Sandbox Code Playgroud)

它的内存和速度极低(当15个字长的字符串重复数百万次时).假设字符串由用空格分隔的标记组成.

java string performance

1
推荐指数
2
解决办法
6041
查看次数

将以特定字符开头的文本文件的行拆分为单独的文件

在bash中有一个单行解决方案,用于将所有以相同整数开头的句子移动到同一个文件(保留它们的顺序)吗?

0 ||| the shortage of snow in mountain stirred hoteliers 
....
0 ||| the shortage of snow in mountain stirred hotel
1 ||| the runways deserted pose any problem that operators ski .
...
1 ||| the runways deserted do not pose a problem that operators of ski .
2 |||
...
Run Code Online (Sandbox Code Playgroud)

要将以相同数字开头的行移动到单独的文件0,1,2等中?

bash

1
推荐指数
1
解决办法
186
查看次数

如何按排序顺序连接文件?

我有一个文件目录,我想合并它们。唯一的问题是我想通过调用“ ls -l” 以它们出现的完全相同的顺序合并它们。

bash

1
推荐指数
1
解决办法
69
查看次数

如何确保我的 *jar 或 *class 可以在 MacOS 上运行?

抱歉,如果这是题外话。我是一个 java 初学者,知道 java 应该是跨平台一致的。但我想知道我的 jar 文件或 *class 文件在 Ubuntu 上执行的事实是否保证它可以在 MacOS 上正常运行?

我基本上执行以下操作来创建 *class 和 *jar。两个Java类,MAIN.java取决于SIDE.java两者的java文件包括package classes;头部(javac创建一个文件夹名为classes期权和看跌期权MAIN.class,并SIDE.class在那里):

javac -d . SIDE.java MAIN.java
jar cvfe MAIN.jar classes/MAIN classes/*.class
Run Code Online (Sandbox Code Playgroud)

我尝试同时运行:

java classes.MAIN -read number.logs
Run Code Online (Sandbox Code Playgroud)

java -jar MAIN.jar -read number.logs
Run Code Online (Sandbox Code Playgroud)

并且它们都在 Ubuntu 上运行良好。这是否足够好并且可以在 MacOS 上运行?(我没有 MacOS,在这种情况下是否有模拟器可以用来检查事情?)

java macos ubuntu

1
推荐指数
1
解决办法
60
查看次数

与R的线图

这不应该是这么难,但我被困住了.我有一个以下表格的表格:

        |   1     |   2    |   3
  ------------------------------------
  TypeA |  3213   |  2121  |   43    
  TypeB |  31321  |  321   |   10
  TypeC |  332    |   11   |   9
Run Code Online (Sandbox Code Playgroud)

我想生成一条线图,有三条线:每条Type一条,x坐标为"1,2,3",y坐标为数字(3213,...).我按照这里的步骤操作,但不知道如何迭代第一列.

plot r ggplot2

-1
推荐指数
1
解决办法
262
查看次数

标签 统计

bash ×3

java ×3

c++ ×2

plot ×2

r ×2

string ×2

awk ×1

benchmarking ×1

caching ×1

cat ×1

cout ×1

ggplot2 ×1

git ×1

iomanip ×1

macos ×1

memory ×1

numpy ×1

performance ×1

precision ×1

python ×1

shell ×1

timing ×1

ubuntu ×1

visualization ×1