我有一个日期(日期时间对象)的索引数组(x)和一个实际值数组(y:债券价格).做(在iPython中):
plot(x,y)
Run Code Online (Sandbox Code Playgroud)
生成一个完美的时间序列图,x轴标有日期.到目前为止没问题.但我想在某些日期添加文字.例如,在2009-10-31,我希望显示文本"事件1",其中箭头指向该日期的y值.
我已经阅读了关于text()和annotate()的Matplotlib文档但无济于事.它只涵盖了标准编号的x轴,我无法推断如何在我的问题上运用这些例子.
谢谢
我需要数据帧,df1有列A,B,C,D ......而df2有列A,B,E,F ...
我要合并的键位于A列.在两个数据帧中B也(很可能)是相同的.虽然这是一个大数据集,但我正在进行清洁,所以我对所有内容都没有非常好的概述.
我做
merge(df1, df2, on='A')
Run Code Online (Sandbox Code Playgroud)
结果包含一个名为B_x的列.由于数据集是大而凌乱我没有试图研究如何B_X不同于乙在DF1和乙在DF2
所以我的问题只是一般性的:当Pandas将_x附加到合并数据框中的列名时,它意味着什么?
谢谢
我有以下数据帧:
fsq digits digits_type
0 1 1 odd
1 2 1 odd
2 3 1 odd
3 11 2 even
4 22 2 even
5 101 3 odd
6 111 3 odd
Run Code Online (Sandbox Code Playgroud)
我想添加一个最后一列,count包含属于数字组的fsq 数,即:
fsq digits digits_type count
0 1 1 odd 3
1 2 1 odd 3
2 3 1 odd 3
3 11 2 even 2
4 22 2 even 2
5 101 3 odd 2
6 111 3 odd 2
Run Code Online (Sandbox Code Playgroud)
由于有3个 …
例如:我有a = np.array([123, 412, 444])
和b = np.array([123, 321])
我想知道是否a包含所有元素b.这有简单的操作吗?在这种情况下,这不是真的.
我正在研究Project Euler Problem 50,它指出:
素数41可以写成六个连续素数的总和:
41 = 2 + 3 + 5 + 7 + 11 + 13这是连续素数的最长和,它加到低于一百的素数.
低于一千的连续素数的最长和加上一个素数,包含21个项,并且等于953.
哪个素数低于一百万,可以写成最连续素数的总和?
为了确定素数P中的项(如果它可以写成素数的总和),我使用所有素数的滑动窗口(按递增顺序)直到(但不包括)P,并计算所有的总和这些窗口,如果总和等于考虑的素数,我算一下窗口的长度......
这适用于1000以下的所有素数,但是对于高达10**6的素数来说它非常慢,所以我希望备忘录会有所帮助; 在计算滑动窗口的总和时,做了很多双重工作......(对吧?)
所以我在网上找到了标准的memoizaton实现,并将其粘贴在我的代码中,这是正确的吗?(我不知道应该怎么在这里工作......)
primes = tuple(n for n in range(1, 10**6) if is_prime(n)==True)
count_best = 0
##http://docs.python.org/release/2.3.5/lib/itertools-example.html:
## Slightly modified (first for loop)
from itertools import islice
def window(seq):
for n in range(2, len(seq) + 1):
it = iter(seq)
result = tuple(islice(it, n))
if len(result) == n:
yield result …Run Code Online (Sandbox Code Playgroud) 我有一个包含内联图的iPython笔记本(即它包含命令图(x,y)).当我发出命令ipython nbconvert --to latex --post PDF --SphinxTransformer.author ='Myself'MyNotebook.ipynb时,生成的.PDF文件包含该图,但它已导出到.PNG,所以它没有看起来很好(像素化).如何告诉nbconvert将所有图表/数字导出到.EPS?
谢谢
我有一个代表网格的6x6矩阵.在该网格的一部分,我有一个较小的网格(3x3)代表如下:
In [65]:
arr = np.zeros((6,6))
arr[0:3, 0:3] = 1
arr
Out[65]:
array([[ 1., 1., 1., 0., 0., 0.],
[ 1., 1., 1., 0., 0., 0.],
[ 1., 1., 1., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0.]])
Run Code Online (Sandbox Code Playgroud)
我想绘制这个,但是matplotlib错了,你可以在下面看到.红色正方形应该覆盖水平轴和垂直轴上从0到3的区域.
In [88]:
plt.matshow(arr)
plt.grid()
Run Code Online (Sandbox Code Playgroud)

我该如何解决?谢谢
我有一个探测数组的函数,如果探测成功,则返回一个数组索引.
在我的代码中,type_t为了清楚起见,我已经为数组索引a制作了所有类型.
保留此功能的清晰度的优先方法是什么?我应该将一个指针参数带到一个错误变量并设置它吗?
inline size_t
lin_search(const double *pxa, const double x, const size_t idxlow, const size_t idxhigh)
{
for (size_t i = idxlow; i < idxhigh; i++)
{
if (pxa[i] <= x && pxa[i+1] > x)
return i;
}
return -1; // If I change the return type to f.ex long int this works
// but I am no longer consistent
}
Run Code Online (Sandbox Code Playgroud)
然后我可以用它作为
index = linsearch(parray, x, 0, n - 1);
if (index == -1)
... not found
Run Code Online (Sandbox Code Playgroud) 那可能吗?以直截了当的方式做wc我需要花费精力才能看到该文件包含超过4000万行:
$ wc -l 20150210.txt
45614736 20150210.txt
Run Code Online (Sandbox Code Playgroud)
我四处搜索并且numfmt出现了,但显然在OSX上没有(也没有brew).那么在OSX上有一个简单的方法吗?谢谢.
我有一个函数is_prime(n),如果n是素数则返回True,否则返回False.在NumPy中我循环,检查数组是否包含素数,并且每次迭代时数组的开始都是相同的,所以我想记住is_prime(n)函数以避免大量不必要的计算.
由于我有一个数组,我想向量化is_prime(n),所以我可以逐个元素,NumPy样式应用于数组.我使用NumPy教程中的一行(稍后显示)执行此操作
我还使用了网上找到的memoization模板:
def memoize(function):
cache = {}
def decorated_function(*args):
if args in cache:
return cache[args]
else:
val = function(*args)
cache[args] = val
return val
return decorated_function
Run Code Online (Sandbox Code Playgroud)
然后:
is_prime = memoize(is_prime)
Run Code Online (Sandbox Code Playgroud)
但是,如果我现在对memoized is_prime函数进行矢量化,那么V_prime现在是否已正确记忆?:
V_prime = np.vectorize(is_prime)
Run Code Online (Sandbox Code Playgroud)
谢谢
这可能是微不足道的,但在搜索时我没有得到解决方案:
我有以下简单的类:
class Celcius:
def __init__(self, temperature=0):
self.temperature = temperature
def to_fahrenheit(self):
return (self.temperature*1.8) + 32
def get_temperature(self):
print "getting temp"
return self._temperature
def set_temperature(self, value):
if value < -273:
raise ValueError("dayum u trippin' fool")
print "setting temp"
self._temperature = value
temperature = property(get_temperature, set_temperature)
c = Celcius()
Run Code Online (Sandbox Code Playgroud)
当我在Sublime Text 3(通过点击cmd + B)中运行它时,控制台不会打印任何内容.我应该看到:
setting temp
Run Code Online (Sandbox Code Playgroud)
如果我将以下内容添加到脚本的末尾:
print "banana"
print "apple"
Run Code Online (Sandbox Code Playgroud)
这两行都按预期打印.
如果我从终端运行上面的python脚本(使用python -u,或者只是python),结果完全相同.我想我错过了一些非常愚蠢的东西.谢谢
说我有
v = rbind(1, 1, 0, 0, 0, 0)
# > v
# [,1]
# [1,] 1
# [2,] 1
# [3,] 0
# [4,] 0
# [5,] 0
# [6,] 0
Run Code Online (Sandbox Code Playgroud)
我怎么会这样?
# > m
# [,1] [,2] [,3]
# [1,] 1 0 0
# [2,] 1 0 0
# [3,] 0 1 0
# [4,] 0 1 0
# [5,] 0 0 1
# [6,] 0 0 1
Run Code Online (Sandbox Code Playgroud) python ×8
numpy ×4
matplotlib ×2
pandas ×2
bash ×1
c ×1
ipython ×1
macos ×1
memoization ×1
primes ×1
python-2.7 ×1
r ×1
wc ×1