Questions tagged «pandas»

Pandas是用于数据处理和分析的Python库,例如,在统计,实验科学结果,计量经济学或金融学中常见的数据框,多维时间序列和横截面数据集。Pandas是Python中主要的数据科学库之一。

3
在Pandas条形图上用值注释条
我一直在寻找一种方法,用DataFrame中的四舍五入数值在Pandas条形图中标注条形。 >>> df=pd.DataFrame({'A':np.random.rand(2),'B':np.random.rand(2)},index=['value1','value2'] ) >>> df A B value1 0.440922 0.911800 value2 0.588242 0.797366 我想得到这样的东西: 我尝试使用此代码示例,但所有注释均以x刻度为中心: >>> ax = df.plot(kind='bar') >>> for idx, label in enumerate(list(df.index)): for acc in df.columns: value = np.round(df.ix[idx][acc],decimals=2) ax.annotate(value, (idx, value), xytext=(0, 15), textcoords='offset points')

2
将DataFrames列表保存到多页Excel电子表格
如何将DataFrames列表导出到一个Excel电子表格中?状态 文档to_excel: 注意 如果传递现有的ExcelWriter对象,则工作表将添加到现有的工作簿中。这可用于将不同的DataFrame保存到一个工作簿中 writer = ExcelWriter('output.xlsx') df1.to_excel(writer, 'sheet1') df2.to_excel(writer, 'sheet2') writer.save() 之后,我想我可以编写一个将DataFrame列表保存到一个电子表格的函数,如下所示: from openpyxl.writer.excel import ExcelWriter def save_xls(list_dfs, xls_path): writer = ExcelWriter(xls_path) for n, df in enumerate(list_dfs): df.to_excel(writer,'sheet%s' % n) writer.save() 但是(带有两个小DataFrame的列表,每个小DataFrame可以to_excel单独保存),引发了一个异常(编辑:删除了traceback): AttributeError: 'str' object has no attribute 'worksheets' 大概我ExcelWriter打错电话了,应该怎么做才能做到这一点?

13
比较两个数据框并获得差异
我有两个数据框。例子: df1: Date Fruit Num Color 2013-11-24 Banana 22.1 Yellow 2013-11-24 Orange 8.6 Orange 2013-11-24 Apple 7.6 Green 2013-11-24 Celery 10.2 Green df2: Date Fruit Num Color 2013-11-24 Banana 22.1 Yellow 2013-11-24 Orange 8.6 Orange 2013-11-24 Apple 7.6 Green 2013-11-24 Celery 10.2 Green 2013-11-25 Apple 22.1 Red 2013-11-25 Orange 8.6 …


1
羽毛和镶木地板有什么区别?
两者都是用于数据分析系统的列式(磁盘)存储格式。两者都集成在Apache Arrow(用于python的pyarrow软件包)中,并且旨在与Arrow对应,作为列式内存分析层。 两种格式有何不同? 如果可能的话,在与熊猫一起工作时,您是否应该总是喜欢羽毛? 在哪些情况下羽毛比实木复合地板更合适,反之则更合适? 附录 我在这里https://github.com/wesm/feather/issues/188找到了一些提示,但是鉴于这个项目的年龄很小,可能有点过时了。 这不是一个严格的速度测试,因为我只是转储并加载整个Dataframe,但是如果您以前从未听说过这些格式,则可以给您留下深刻的印象: # IPython import numpy as np import pandas as pd import pyarrow as pa import pyarrow.feather as feather import pyarrow.parquet as pq import fastparquet as fp df = pd.DataFrame({'one': [-1, np.nan, 2.5], 'two': ['foo', 'bar', 'baz'], 'three': [True, False, True]}) print("pandas df …

1
熊猫中的多索引排序
我在pandas df中有一个包含多索引列的数据集,我想按特定列中的值进行排序。我尝试使用sortindex和sortlevel,但无法获得所需的结果。我的数据集看起来像: Group1 Group2 A B C A B C 1 1 0 3 2 5 7 2 5 6 9 1 0 0 3 7 0 2 0 3 5 我想按降序按组1中的C列对所有数据和索引进行排序,因此我的结果如下所示: Group1 Group2 A B C A B C 2 5 6 9 1 0 0 1 1 0 …

3
熊猫按分组依据求和,但排除某些列
在Pandas数据框上进行分组的最佳方法是什么,但要从该分组中排除一些列呢?例如我有以下数据框: Code Country Item_Code Item Ele_Code Unit Y1961 Y1962 Y1963 2 Afghanistan 15 Wheat 5312 Ha 10 20 30 2 Afghanistan 25 Maize 5312 Ha 10 20 30 4 Angola 15 Wheat 7312 Ha 30 40 50 4 Angola 25 Maize 7312 Ha 30 40 50 我想对“国家”和“项目代码”列进行分组,仅计算Y1961,Y1962和Y1963列下的行总和。结果数据框应如下所示: Code Country Item_Code …

2
带熊猫的float64 to_csv
我正在读取带有如下浮动数字的CSV: Bob,0.085 Alice,0.005 并导入到数据框,然后将此数据框写入新位置 df = pd.read_csv(orig) df.to_csv(pandasfile) 现在pandasfile有: Bob,0.085000000000000006 Alice,0.0050000000000000001 发生什么事?也许我必须转换为float32之类的其他类型? 我正在使用pandas 0.9.0和numpy 1.6.2。
88 python  numpy  pandas 

5
如何在熊猫数据框中拆分元组列?
我有一个熊猫数据框(这只是一小块) >>> d1 y norm test y norm train len(y_train) len(y_test) \ 0 64.904368 116.151232 1645 549 1 70.852681 112.639876 1645 549 SVR RBF \ 0 (35.652207342877873, 22.95533537448393) 1 (39.563683797747622, 27.382483096332511) LCV \ 0 (19.365430594452338, 13.880062435173587) 1 (19.099614489458364, 14.018867136617146) RIDGE CV \ 0 (4.2907610988480362, 12.416745648065584) 1 (4.18864306788194, 12.980833914392477) RF \ …

3
将pandas DataFrame中带逗号的数字字符串转换为float
我有一个DataFrame,其中包含数字作为字符串,并带有千位标记的逗号。我需要将它们转换为浮点数。 a = [['1,200', '4,200'], ['7,000', '-0.03'], [ '5', '0']] df=pandas.DataFrame(a) 我猜我需要使用locale.atof。确实 df[0].apply(locale.atof) 可以正常工作。我得到一系列的花车。 但是,当我将其应用于DataFrame时,会出现错误。 df.apply(locale.atof) TypeError :(“无法将系列转换为”,发生在索引0') 和 df[0:1].apply(locale.atof) 给出另一个错误: ValueError:('float()的无效文字:1,200',u'发生在索引0') 那么,如何将DataFrame字符串转换为浮点数的DataFrame?
88 python  pandas 


3
熊猫中的样本数据集
使用R时,使用以下方法方便地加载“练习”数据集 data(iris) 要么 data(mtcars) 熊猫有类似的东西吗?我知道我可以使用任何其他方法加载,只是好奇是否有内置函数。


5
在同一IPython Notebook单元中制作多个图表
我已经开始使用IPython Notebook ipython notebook --pylab inline 这是我在一个单元格中的代码 df['korisnika'].plot() df['osiguranika'].plot() 这工作正常,它将绘制两条线,但在同一张图表上。 我想在单独的图表上绘制每条线。如果图表彼此相邻,而不是一个接一个,那就太好了。 我知道我可以将第二行放在下一个单元格中,然后我将获得两个图表。但是我希望这些图表彼此靠近,因为它们表示相同的逻辑单元。

1
熊猫时间序列图设置x轴主要和次要刻度线和标签
我希望能够为从熊猫时间序列对象绘制的时间序列图设置主要和次要xticks及其标签。 熊猫0.9“新增功能”页面显示: “您可以使用to_pydatetime或为Timestamp类型注册一个转换器” 但是我不知道该怎么做,以便可以使用matplotlibax.xaxis.set_major_locator和ax.xaxis.set_major_formatter(和次要)命令。 如果我使用它们而没有转换熊猫时间,则x轴刻度和标签最终会出错。 通过使用“ xticks”参数,我可以将主要刻度线传递到pandas.plot,然后设置主要刻度线标签。我不知道如何使用这种方法做较小的滴答声。(我可以在pandas.plot设置的默认次要刻度上设置标签) 这是我的测试代码: import pandas print 'pandas.__version__ is ', pandas.__version__ print 'matplotlib.__version__ is ', matplotlib.__version__ dStart = datetime.datetime(2011,5,1) # 1 May dEnd = datetime.datetime(2011,7,1) # 1 July dateIndex = pandas.date_range(start=dStart, end=dEnd, freq='D') print "1 May to 1 July 2011", dateIndex testSeries = pandas.Series(data=np.random.randn(len(dateIndex)), index=dateIndex) ax …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.