我在Mac OS X PyCharm上设置了Enthought作为解释器:
~/Library/Enthought/Canopy_64bit/User
Run Code Online (Sandbox Code Playgroud)
但是,它没有显示来自matplotlib的任何图.
import pandas as pd
from numpy import *
import matplotlib.pyplot as plt
ts = pd.Series(random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts = ts.cumsum()
ts.plot()
Run Code Online (Sandbox Code Playgroud)
这只是给了我Out[124]: <matplotlib.axes.AxesSubplot at 0x10dd29f90>.它没有显示情节,也没有做任何其他事情.没有错误,没有.
如何使用熊猫行作为numpy数组的索引?说我有
>>> grid = arange(10,20)
>>> df = pd.DataFrame([0,1,1,5], columns=['i'])
Run Code Online (Sandbox Code Playgroud)
我想要做
>>> df['j'] = grid[df['i']]
IndexError: unsupported iterator index
Run Code Online (Sandbox Code Playgroud)
实际执行此操作的简短方法是什么?
更新
确切地说,我想要一个额外的列,其值与第一列包含的索引相对应:df['j'][0] = grid[df['i'][0]]在列0等中
预期产量:
index i j
0 0 10
1 1 11
2 1 11
3 5 15
Run Code Online (Sandbox Code Playgroud)
平行案例:Numpy-to-Numpy
只是为了显示这个想法的来源,在标准的python /中numpy,如果你有
>>> keys = [0, 1, 1, 5]
>>> grid = arange(10,20)
>>> grid[keys]
Out[30]: array([10, 11, 11, 15])
Run Code Online (Sandbox Code Playgroud)
这正是我想要做的.只有我的键没有存储在矢量中,它们才存储在一列中.
请看下matplotlib图/图,其中x轴是时间.
import numpy as np
import matplotlib.pyplot as plt
time = np.linspace(1500, 2000)
plt.plot(time, np.exp(time*0.01))
Run Code Online (Sandbox Code Playgroud)
说我有一个标签列表,例如
myLabels = {1500:'Awful times', 1800:'Somewhat better times', 1930:'Bad again', 1990:'We are alright'}
Run Code Online (Sandbox Code Playgroud)
标签应该以间隔而不是点的方式指向; Awful times是的标签[1500, 1800].
我想以某种方式将这些标签中的信息添加到图中.我的实际数字包含几个图/时间序列,因此解决方案需要"系列独立".我不知道什么看起来很好,以及如何做到这一点.我有一些想法
通常如何添加此类信息?我将如何使用它matplotlib?
我有以下小组
unemp nobsRel measure rank nobsRel2 nobsCumSummed
year foo
2000 8010 0.000024 0.000167 1.0 348.0 0.000167 0.980176
4950 0.000264 0.003630 1.0 349.0 0.003630 0.983806
2540 0.000438 0.011027 1.0 350.0 0.011027 0.994833
9830 0.000118 0.000118 NaN NaN 0.000118 0.994952
9920 0.005048 0.005048 NaN NaN 0.005048 1.000000
Run Code Online (Sandbox Code Playgroud)
这是当我尝试删除重复项时会发生什么:
在[104]中:test.drop_duplicates(subset ='rank')Out [104]:
unemp nobsRel measure rank nobsRel2 nobsCumSummed
year foo
2000 8010 0.000024 0.000167 1.0 348.0 0.000167 0.980176
4950 0.000264 0.003630 1.0 349.0 0.003630 0.983806
2540 0.000438 0.011027 1.0 350.0 0.011027 0.994833
9830 …Run Code Online (Sandbox Code Playgroud)