我想在ubuntu 14.04上安装llvmpy.
uname -a
Linux -esktop 3.13.0-30-generic #55-Ubuntu SMP Fri Jul 4 21:40:53 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a
LSB Version: core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:core-4.0-amd64:core-4.0-noarch:core-4.1-amd64:core-4.1-noarch:security-4.0-amd64:security-4.0-noarch:security-4.1-amd64:security-4.1-noarch
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
Run Code Online (Sandbox Code Playgroud)
sudo pip install llvmpy失败.输出的结尾是
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/llvmpy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-7HvRcB-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/llvmpy
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()
File "/usr/lib/python2.7/dist-packages/pip/__init__.py", …Run Code Online (Sandbox Code Playgroud) 我有一个CSV文件,其行如下所示:
ID,98.4,100M,55M,65M,75M,100M,75M,65M,100M,98M,100M,100M,92M,0#,0N#,
Run Code Online (Sandbox Code Playgroud)
我可以用它阅读
#!/usr/bin/env python
import pandas as pd
import sys
filename = sys.argv[1]
df = pd.read_csv(filename)
Run Code Online (Sandbox Code Playgroud)
给定一个特定的列,我想的行由ID,然后输出的平均值和标准偏差对每个ID分开.
我的第一个问题是,如何从数字中删除所有非数字部分,例如"100M"和"0N#",它们应分别为100和0.
我也试过循环相关的标题和使用
df[header].replace(regex=True,inplace=True,to_replace=r'\D',value=r'')
Run Code Online (Sandbox Code Playgroud)
正如Pandas DataFrame中所建议的那样:从列中的字符串中删除不需要的部分.
然而,这将98.4变为984.
我可以访问hdfs文件系统,可以看到镶木地板文件
hadoop fs -ls /user/foo
Run Code Online (Sandbox Code Playgroud)
如何将这些镶木地板文件复制到我的本地系统并将它们转换为csv以便我可以使用它们?这些文件应该是简单的文本文件,每行包含许多字段.
我有以下代码.原则上,它需要2 ^ 6*1000 = 64000次迭代,这是非常小的数字.然而,我的电脑需要9秒,我想至少运行n = 15.
from __future__ import division
import numpy as np
import itertools
n=6
iters = 1000
firstzero = 0
bothzero = 0
for S in itertools.product([-1,1], repeat = n+1):
for i in xrange(iters):
F = np.random.choice(np.array([-1,0,0,1], dtype=np.int8), size = n)
while np.all(F ==0):
F = np.random.choice(np.array([-1,0,0,1], dtype=np.int8), size = n)
FS = np.convolve(F,S, 'valid')
if (FS[0] == 0):
firstzero += 1
if np.all(FS==0):
bothzero += 1
print "firstzero", firstzero
print "bothzero", bothzero
Run Code Online (Sandbox Code Playgroud)
是否有可能加快这一速度或者我应该用C重写它?
分析表明它花费了大部分时间
258003 …Run Code Online (Sandbox Code Playgroud) 如果您打开了10个xterms,那么是否可以以某种方式搜索所有bash历史记录?
我可以
history|grep something
Run Code Online (Sandbox Code Playgroud)
在每一个单独但我有时想避免这一点.
我试图第一次使用英特尔C编译器,并得到完全错误的答案.我究竟做错了什么?
我有一些代码如下:
#include <stdint.h>
#include <stdio.h>
#define CHUNK_SIZE 12
#define NUM_THREADS 8
#define popcnt __builtin_popcountll
#define BILLION (1000 * 1000 * 1000)
#define UPDATE_ROW_PPROD() \
update_row_pprod(row_pprod, row, rows, row_sums, mask, mask_popcnt)
typedef __int128 int128_t;
static inline int64_t update_row_pprod
(
int64_t* row_pprod, int64_t row, int64_t* rows,
int64_t* row_sums, int64_t mask, int64_t mask_popcnt
)
{
int64_t temp = 2 * popcnt(rows[row] & mask) - mask_popcnt;
row_pprod[0] *= temp;
temp -= 1;
row_pprod[1] *= temp;
temp -= row_sums[row];
row_pprod[2] *= temp;
temp += …Run Code Online (Sandbox Code Playgroud) 在我的 C 代码中,我有
complex float M[n][n];
complex float *delta = malloc(n * sizeof *delta);
complex float *v = malloc(n * sizeof *v);
for (i = 0; i < n; i++) {
v[i] -= 2.*delta[j]*M[j][i];
}
Run Code Online (Sandbox Code Playgroud)
哪里i和n是整数。
有人建议我使用__builtin_assume_aligned确保这些对齐以帮助自动矢量化。但是,查看了文档后,我不明白该怎么做。
您将如何将它用于此代码?
本题代码摘自How to help gcc vectorize C code。这也是我想尝试调整事物的原因。
我有一个非常大的pyspark数据帧和一个较小的pandas数据帧,我读如下:
df1 = spark.read.csv("/user/me/data1/")
df2 = pd.read_csv("data2.csv")
Run Code Online (Sandbox Code Playgroud)
两个数据帧都包括标记为"A"和"B"的列.我想创建另一个pyspark数据框,其中只有那些行df1中"A"和"B"列中的条目出现在具有相同名称的列中df2.即使用df2的列"A"和"B"过滤df1.
通常我认为这将是一个连接(实现
merge)但你如何加入pandas数据帧与pyspark一个?
我无法转换df1为pandas数据帧.
我有以下代码在 matplotlib 中绘制一些线条。我试图用透明圆圈而不是用圆圈填充的标准实体来显示点。
我怎样才能在图表中的每个圆圈之前和之后留出一点间隙,这样虚线就不会碰到它们。我认为这在这里看起来会更好,因为我只有点上的数据,所以中间的线不代表真实数据。
import matplotlib.pyplot as plt
import numpy as np
t = np.array([0.19641715476064042,
0.25,
0.34,
0.42])
c = np.array([0.17,
0.21,
0.27,
0.36])
plt.plot(t, '-go', markerfacecolor='w', linestyle= 'dashed', label='n=20')
plt.plot(c, '-bo', markerfacecolor='w', linestyle= 'dashed', label='n=22')
plt.show()
Run Code Online (Sandbox Code Playgroud)这就是 matplotlib 代码目前给我的。

这就是我希望它最终的样子(显然有不同的数据)。

我有一个df有 4 列的熊猫数据框 。例如,这是一个玩具示例:
foo1 foo2 foo3 foo4
egg cheese 2 1
apple pear 1 3
french spanish 10 1
Run Code Online (Sandbox Code Playgroud)
列是 foo1、foo2、foo3 和 foo4
我想交换列 foo1 和 foo2,并在 foo3 < foo4 时交换列 foo3 和 foo4。所以结果将是:
foo1 foo2 foo3 foo4
cheese egg 1 2
apple pear 1 3
spanish french 1 10
Run Code Online (Sandbox Code Playgroud)
我可以找到需要交换的行,df[df['foo3'] < df['foo4']] 但如何有效地进行交换。我的数据框很大。
python ×7
pandas ×3
apache-spark ×2
c ×2
pyspark ×2
bash ×1
cython ×1
data-munging ×1
dataframe ×1
hadoop ×1
llvm ×1
matplotlib ×1
numpy ×1
openmp ×1
parquet ×1
performance ×1