草庐IT

pandas-datareader

全部标签

python - 如何在 Pandas 数据系列上绘制任意标记?

我正在尝试在pandas数据系列中放置标记(以在股票市场图表上显示买入/卖出事件)我可以在使用pyplot创建的简单数组上执行此操作,但是我找不到关于如何在Pandas时间序列中指示任意事件的引用。也许pandas没有内置此功能。有人可以按照这个系列的方式提供帮助并沿着曲线添加一些任意标记...importdatetimeimportmatplotlib.pyplotaspltimportpandasfrompandasimportSeries,date_rangeimportnumpyasnpimportrandomts=Series(randn(1000),index=date_r

python - 要列出的 Pandas 列名称

根据这个线程:SO:Columnnamestolist将列名转换为列表应该很简单。但如果我这样做:df.columns.tolist()我确实得到了:[u'q_igg',u'q_hcp',u'c_igg',u'c_hcp']我知道,我可以去掉u和'。但是我只想将干净的名称作为列表获取,而无需任何修改。这可能吗? 最佳答案 或者,您可以尝试:df2=df.columns.get_values()这会给你:array(['q_igg','q_hcp','c_igg','c_hcp'],dtype=object)然后:df2.tolist

python - 创建一个 Pandas 滚动窗口系列数组

假设我有以下代码:importnumpyasnpimportpandasaspdx=np.array([1.0,1.1,1.2,1.3,1.4])s=pd.Series(x,index=[1,2,3,4,5])这会产生以下:11.021.131.241.351.4现在我想要创建的是一个大小为n的滚动窗口,但我不想获取每个窗口的均值或标准差,我只需要数组。所以,假设n=3。我想要一个转换,在给定输入s的情况下输出以下系列:1array([1.0,nan,nan])2array([1.1,1.0,nan])3array([1.2,1.1,1.0])4array([1.3,1.2,1.1])

python - 将 Pandas 系列列表转换为数据框

我有一个由列表组成的系列importpandasaspds=pd.Series([[1,2,3],[4,5,6]])我想要一个DataFrame,每列都有一个列表。from_items、from_records、DataFrameSeries.to_frame似乎都不起作用。如何做到这一点? 最佳答案 正如@Hatshepsut在评论中指出的那样,from_items是deprecatedasofversion0.23.该链接建议改用from_dict,因此可以将旧答案修改为:pd.DataFrame.from_dict(dict(

python - 遍历 pandas 中的行以检查条件

我在Pandas中有以下DF。+-------+-------+|Col_A|Col_B|+-------+-------+|1234|||6267|||6364|||573|||0|||838|||92|||3221||+-------+-------+Col_B应填充True或False值。默认情况下,它是False,但是当第一个0已经被“看到”时,其余的DF应该是True。DF有超过100000行。自从Col_A中出现第一个“0”值以来,将col_B中的值设置为等于“True”的最快方法是什么?+-------+--------+|Col_A|Col_B|+-------+---

python - 高效地将值从一列替换为另一列 Pandas DataFrame

我有一个像这样的PandasDataFrame:col1col2col310.20.30.320.20.30.3300.40.44000.3500060.10.40.4仅当col1值等于0时,我想用第二列(col2)中的值替换col1值,之后(对于剩余的零值),再次执行此操作,但使用第三列(col3)。期望的结果是下一个:col1col2col310.20.30.320.20.30.330.40.40.440.300.3500060.10.40.4我使用pd.replace函数完成了它,但它似乎太慢了。我认为必须有一种更快的方法来完成它。df.col1.replace(0,df.col

python - Aggfunc 的 Pandas 数据透视表列表

Agg函数的Pandas数据透视表字典我正在尝试在旋转期间计算3个aggregative函数:计数均值标准差这是代码:n_page=(pd.pivot_table(Main_DF,values='SPC_RAW_VALUE',index=['ALIAS','SPC_PRODUCT','LABLE','RAW_PARAMETER_NAME'],columns=['LOT_VIRTUAL_LINE'],aggfunc={'N':'count','Mean':np.mean,'Sigma':np.std}).reset_index())我得到的错误是:KeyError:'Mean'如何计算这

python - 在 Pandas 中使用 groupby 来计算一列中与另一列相比的内容

也许groupby是错误的方法。似乎它应该工作,但我没有看到它...我想按结果对事件进行分组。这是我的数据框(df):StatusEventSUCCESSRunSUCCESSWalkSUCCESSRunFAILEDWalk这是我想要的结果:EventSUCCESSFAILEDRun21Walk01我正在尝试制作一个分组对象,但我不知道如何调用它来显示我想要的内容。grouped=df['Status'].groupby(df['Event']) 最佳答案 试试这个:pd.crosstab(df.Event,df.Status)Sta

python - Pandas - 使用 .isnull()、notnull()、dropna() 删除缺少数据的行不起作用

这真的很奇怪。我尝试了几种从Pandas数据框中删除缺少数据的行的方法,但它们似乎都不起作用。这是代码(我只是取消注释使用的一种方法-但这些是我在不同修改中使用的三种-这是最新的):importpandasaspdTest=pd.DataFrame({'A':[1,2,3,4,5],'B':[1,2,'NaN',4,5],'C':[1,2,3,'NaT',5]})print(Test)#Test=Test.ix[Test.C.notnull()]#Test=Test.dropna()Test=Test[~Test[Test.columns.values].isnull()]print"

python - PyInstaller with Pandas 创建超过 500 MB 的 exe

我尝试使用PyInstaller3.2.1创建一个exe文件,出于测试目的,我尝试为以下代码制作一个exe:importpandasaspdprint('helloworld')经过相当长的时间(15分钟以上),我完成了620MB大小的dist文件夹并构建了150MB。我在Windows上工作,使用Python3.5.2|Anaconda自定义(64位)。可能值得注意的是,在dist文件夹中,mkl文件占近300MB。我使用“pyinstaller.exefoo.py”运行pyinstaller。我尝试使用--exclude-module来排除一些依赖项,但最终还是得到了巨大的文件。无