Questions tagged «pandas»

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

4
对于不规则的分隔符,如何使pandas read_csv中的分隔符更灵活wrt空格?
我需要通过使用read_csv方法从文件中读取数据来创建数据框。但是,分隔符不是很规则:一些列由制表符(\t)分隔,另一些则由空格分隔。此外,某些列可以用2或3个或更多的空格隔开,甚至可以用空格和制表符的组合分隔(例如3个空格,两个制表符然后是1个空格)。 有没有办法告诉熊猫正确对待这些文件? 顺便说一句,如果我使用Python,则不会出现此问题。我用: for line in file(file_name): fld = line.split() 而且效果很好。不管字段之间是否有2或3个空格。即使空格和制表符的组合也不会引起任何问题。熊猫可以做同样的事情吗?


2
数据类型“ datetime64 [ns]”和“ <M8 [ns]”之间的区别?
我在熊猫中创建了一个TimeSeries: In [346]: from datetime import datetime In [347]: dates = [datetime(2011, 1, 2), datetime(2011, 1, 5), datetime(2011, 1, 7), .....: datetime(2011, 1, 8), datetime(2011, 1, 10), datetime(2011, 1, 12)] In [348]: ts = Series(np.random.randn(6), index=dates) In [349]: ts Out[349]: 2011-01-02 0.690002 2011-01-05 1.001543 2011-01-07 -0.503087 2011-01-08 -0.622274 2011-01-10 -0.921169 …

7
ImportError:没有名为pandas的模块
我正在尝试在python中编写代码以获取Twitter数据,但twython并没有收到错误。但是我对熊猫错误。 我已经使用pip install pandas安装了pandas。但是我仍然会收到这个错误。请帮忙 F:\&gt;pip install pandas Collecting pandas c:\python27\lib\site-packages\pip\_vendor\requests\packages\urllib3\util\ssl_.py :90: InsecurePlatformWarning: A true SSLContext object is not available. This pr events urllib3 from configuring SSL appropriately and may cause certain SSL conn ections to fail. For more information, see https://urllib3.readthedocs.org/en/la test/security.html#insecureplatformwarning. InsecurePlatformWarning Using cached pandas-0.17.0-cp27-none-win32.whl Requirement already satisfied (use …
75 python  pandas 

3
如何过滤NaN(熊猫)?
我有一个熊猫数据框(df),我想做些类似的事情: newdf = df[(df.var1 == 'a') &amp; (df.var2 == NaN)] 我试过用np.NaN,或'NaN'或'nan'等替换NaN ,但没有任何结果可算作True。没有pd.NaN。 df.fillna(np.nan)在评估上述表达式之前,我可以使用它,但是感觉有点黑,我想知道它是否会干扰其他依赖于以后识别熊猫格式NaN的熊猫操作。 我觉得应该对这个问题有一个简单的答案,但是以某种方式它使我难以理解。任何建议表示赞赏。谢谢。
75 python  pandas  nan 

5
熊猫DataFrame性能
Pandas确实很棒,但令我惊讶的是,从Pandas.DataFrame中检索值的效率低下。在下面的玩具示例中,即使DataFrame.iloc方法也比字典慢100倍以上。 问题:这里的教训仅仅是字典是查找价值的更好方法吗?是的,我知道那正是他们的目的。但是我只是想知道是否缺少有关DataFrame查找性能的信息。 我意识到这个问题比“提问”更“有趣”,但是我会接受一个提供洞察力或观点的答案。谢谢。 import timeit setup = ''' import numpy, pandas df = pandas.DataFrame(numpy.zeros(shape=[10, 10])) dictionary = df.to_dict() ''' f = ['value = dictionary[5][5]', 'value = df.loc[5, 5]', 'value = df.iloc[5, 5]'] for func in f: print func print min(timeit.Timer(func, setup).repeat(3, 100000)) 值=字典[5] [5] 0.130625009537 值= df.loc [5,5] 19.4681699276 值= …

12
在Pandas中创建指定列类型的空数据框
我试图用索引创建一个空的数据框并指定列类型。我这样做的方式如下: df = pd.DataFrame(index=['pbp'],columns=['contract', 'state_and_county_code', 'state', 'county', 'starting_membership', 'starting_raw_raf', 'enrollment_trend', 'projected_membership', 'projected_raf'], dtype=['str', 'str', 'str', 'str', 'int', 'float', 'float', 'int', 'float']) 但是,出现以下错误, TypeError: data type not understood 这是什么意思?
74 python  pandas 


5
用另一个数据框的索引创建一个空的数据框
我有一个具有多个列和行的数据框df1。简单的例子: TIME T1 T2 1 10 100 2 20 200 3 30 300 我想创建一个空的数据框df2,然后再添加带有计算结果的新列。 目前,我的代码如下所示: df1=pd.read_csv("1.txt",index_col="TIME") df2=df1.copy()[[]] #copy df1 and erase all columns ...添加两个新列: df2["results1"],df2["results2"]=df1["T1"]*df["T2"]*3,df1["T2"]+100 有没有更好/更安全/更快的方法呢?是否可以创建一个空的数据帧df2并仅从df1复制索引?

9
Pandas DataFrame将列表存储为字符串:如何转换回列表?
我有一个n × m的Pandas DataFramedf定义如下。(我知道这不是最好的方法。这对于我在实际代码中尝试做的事情是有道理的,但这将是本文的TMI,所以请相信我,这种方法可以在我的特定情况下使用) &gt;&gt;&gt; df = DataFrame(columns=['col1']) &gt;&gt;&gt; df.append(Series([None]), ignore_index=True) &gt;&gt;&gt; df Empty DataFrame Columns: [col1] Index: [] 我将列表存储在此DataFrame的单元格中,如下所示。 &gt;&gt;&gt; df['column1'][0] = [1.23, 2.34] &gt;&gt;&gt; df col1 0 [1, 2] 由于某种原因,DataFrame将此列表存储为字符串而不是列表。 &gt;&gt;&gt; df['column1'][0] '[1.23, 2.34]' 我有两个问题要问你。 为什么DataFrame将列表存储为字符串,并且有解决此问题的方法? 如果没有,那么是否有Python方式将这个字符串转换为列表? 更新资料 我正在使用的DataFrame已保存并从CSV格式加载。这种格式而不是DataFrame本身将列表从字符串转换为文字。

2
使用直方图的Matplotlib / Pandas错误
我在用熊猫系列对象制作直方图时遇到问题,我不明白为什么它不起作用。该代码以前运行良好,但现在却没有。 这是我的一些代码(特别是我要对其进行直方图绘制的熊猫系列对象): type(dfj2_MARKET1['VSPD2_perc']) 输出结果: pandas.core.series.Series 这是我的绘图代码: fig, axes = plt.subplots(1, 7, figsize=(30,4)) axes[0].hist(dfj2_MARKET1['VSPD1_perc'],alpha=0.9, color='blue') axes[0].grid(True) axes[0].set_title(MARKET1 + ' 5-40 km / h') 错误信息: AttributeError Traceback (most recent call last) &lt;ipython-input-75-3810c361db30&gt; in &lt;module&gt;() 1 fig, axes = plt.subplots(1, 7, figsize=(30,4)) 2 ----&gt; 3 axes[1].hist(dfj2_MARKET1['VSPD2_perc'],alpha=0.9, color='blue') 4 axes[1].grid(True) 5 axes[1].set_xlabel('Time spent [%]') …

3
Python Pandas计数和求和特定条件
大熊猫中是否有单个函数来执行SUMIF的等价功能(对特定条件求和)和COUNTIF(对Excel中的特定条件的值进行计数)? 我知道有许多多步功能可用于 例如sumif我可以使用(df.map(lambda x: condition), or df.size())然后使用.sum() 因为countif我可以使用(groupby functions并寻找答案,或者使用过滤器和.count()) 在输入条件和数据框并获得总和或计数结果时,是否有简单的一步过程即可完成这些功能?
73 python  pandas  sum 


5
如何在for循环中在pandas数据框中追加行?
我有以下for循环: for i in links: data = urllib2.urlopen(str(i)).read() data = json.loads(data) data = pd.DataFrame(data.items()) data = data.transpose() data.columns = data.iloc[0] data = data.drop(data.index[[0]]) 这样创建的每个数据框都具有与其他列相同的大多数列,但不是全部。而且,它们都只有一行。我需要的是将for循环产生的每个数据帧的所有不同列和每一行添加到数据帧中 我尝试了串联或类似的大熊猫,但似乎没有任何效果。任何想法?谢谢。

1
如何基于Pandas数据框中的列表对索引行进行重新排序
我有一个看起来像这样的数据框: company Amazon Apple Yahoo name A 0 130 0 C 173 0 0 Z 0 0 150 它是使用以下代码创建的: import pandas as pd df = pd.DataFrame({'name' : ['A', 'Z','C'], 'company' : ['Apple', 'Yahoo','Amazon'], 'height' : [130, 150,173]}) df = df.pivot(index="name", columns="company", values="height").fillna(0) 我要做的是name根据预定义的列表对行(带有索引)进行排序["Z", "C", "A"]。结果是: company Amazon Apple Yahoo name …
73 python  pandas 

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.