Questions tagged «pandas»

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



3
熊猫:如何更改列的所有值?
我有一个带有称为列的数据框,"Date"并希望该列中的所有值都具有相同的值(仅年份)。例: City Date Paris 01/04/2004 Lisbon 01/09/2004 Madrid 2004 Pekin 31/2004 我想要的是: City Date Paris 2004 Lisbon 2004 Madrid 2004 Pekin 2004 这是我的代码: fr61_70xls = pd.ExcelFile('AMADEUS FRANCE 1961-1970.xlsx') #Here we import the individual sheets and clean the sheets years=(['1961','1962','1963','1964','1965','1966','1967','1968','1969','1970']) fr={} header=(['City','Country','NACE','Cons','Last_year','Op_Rev_EUR_Last_avail_yr','BvD_Indep_Indic','GUO_Name','Legal_status','Date_of_incorporation','Legal_status_date']) for year in years: # save every sheet in …

3
如何删除熊猫中仅包含零的列?
我目前有一个数据框,其中包含以1和0作为值的列,我想遍历这些列并删除仅由0组成的列。到目前为止,这是我尝试过的: ones = [] zeros = [] for year in years: for i in range(0,599): if year[str(i)].values.any() == 1: ones.append(i) if year[str(i)].values.all() == 0: zeros.append(i) for j in ones: if j in zeros: zeros.remove(j) for q in zeros: del year[str(q)] 在哪几年是我正在分析的各个年份的数据帧的列表,其中的数据帧由其中包含一个的列组成,而零是包含所有零的列的列表。是否有更好的方法根据条件删除列?由于某种原因,我必须检查一列是否也位于零列表中,并将它们从零列表中删除,以获得所有零列的列表。
87 python  pandas 

1
将函数应用于DataFrame中的每个单元格
我有一个数据框可能看起来像这样: A B C foo bar foo bar bar foo foo bar 我想浏览每行的每个元素(或每列的每个元素)并应用以下函数来获取后续的DF: def foo_bar(x): return x.replace('foo', 'wow') A B C wow bar wow bar bar wow wow bar 是否有可以将功能应用于每个单元的简单单线? 这是一个简单的示例,因此除了应用函数外,可能还有一种更简单的方法来执行此特定示例,但是我真正要问的是如何在数据帧内的每个单元中应用函数。

5
从pandas DataFrame删除包含空单元格的行
我有一个pd.DataFrame通过解析一些excel电子表格创建的。一列的单元格为空。例如,以下是该列的频率输出,32320条记录的Tenant值缺失。 >>> value_counts(Tenant, normalize=False) 32320 Thunderhead 8170 Big Data Others 5700 Cloud Cruiser 5700 Partnerpedia 5700 Comcast 5700 SDP 5700 Agora 5700 dtype: int64 我正在尝试删除缺少租户的行,但是该.isnull()选项无法识别丢失的值。 >>> df['Tenant'].isnull().sum() 0 该列的数据类型为“对象”。在这种情况下会发生什么?如何在租户丢失的地方删除记录?
87 python  pandas 

13
ValueError:numpy.dtype的大小错误,请尝试重新编译
我刚刚在python 2.7上安装了pandas和statsmodels软件包,当我尝试“将pandas导入为pd”时,出现此错误消息。有人可以帮忙吗?谢谢!!! numpy.dtype has the wrong size, try recompiling Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\formula\__init__.py", line 4, in <module> from formulatools import handle_formula_data File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\formula\formulatools.p y", line 1, in <module> import statsmodels.tools.data as data_util File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\tools\__init__.py", li ne 1, in <module> from tools …

9
如何使用Pandas将新工作表保存在现有的Excel文件中?
我想使用Excel文件来存储用python制作的数据。我的问题是我无法将图纸添加到现有的excel文件中。在这里,我建议使用示例代码来解决此问题 import pandas as pd import numpy as np path = r"C:\Users\fedel\Desktop\excelData\PhD_data.xlsx" x1 = np.random.randn(100, 2) df1 = pd.DataFrame(x1) x2 = np.random.randn(100, 2) df2 = pd.DataFrame(x2) writer = pd.ExcelWriter(path, engine = 'xlsxwriter') df1.to_excel(writer, sheet_name = 'x1') df2.to_excel(writer, sheet_name = 'x2') writer.save() writer.close() 此代码将两个DataFrame保存到两个表中,分别命名为“ x1”和“ x2”。如果创建两个新的DataFrame并尝试使用相同的代码添加两个新的工作表“ x3”和“ x4”,则原始数据将丢失。 import pandas as …

3
从numpy.timedelta64值中提取天数
我正在使用pandas / python,我有两个日期时间序列s1和s2,它们是使用包含日期/时间的df字段上的“ to_datetime”函数生成的。 当我从s2减去s1 s3 = s2-s1 我得到一个类型为s3的系列 timedelta64 [ns] 0 385 days, 04:10:36 1 57 days, 22:54:00 2 642 days, 21:15:23 3 615 days, 00:55:44 4 160 days, 22:13:35 5 196 days, 23:06:49 6 23 days, 22:57:17 7 2 days, 22:17:31 8 622 days, 01:29:25 9 79 days, …
86 python  numpy  pandas 

1
Seaborn在热图中显示3位数字的科学计数法
我正在从pandasivot_table创建一个热图,如下所示: table2 = pd.pivot_table(df,values='control',columns='Year',index='Region',aggfunc=np.sum) sns.heatmap(table2,annot=True,cmap='Blues') 它将创建一个热图,如下所示。您可以看到数字不是很大(最大750),但是它以科学计数法显示它们。如果我查看表格本身,情况并非如此。关于如何使它以简单的符号显示数字有任何想法吗?

8
分割大熊猫数据框
我有423244行的大型数据框。我想将其拆分为4。我尝试了以下给出错误的代码?ValueError: array split does not result in an equal division for item in np.split(df, 4): print item 如何将此数据帧分为4组?
86 python  pandas 

5
将熊猫数据框中的列向上移一格?
我有一个熊猫数据框。我想“落后”我的专栏之一。例如,这意味着将整个列“ gdp”上移一位,然后删除其余行底部的所有多余数据,以使所有列的长度再次相等。 df = y gdp cap 0 1 2 5 1 2 3 9 2 8 7 2 3 3 4 7 4 6 7 7 df_lag = y gdp cap 0 1 3 5 1 2 7 9 2 8 4 2 3 3 7 7 无论如何要这样做?

2
如何在Seaborn Lmplot FacetGrid中设置一些xlim和ylim
我正在使用Seaborn的lmplot绘制线性回归,将我的数据集分为两个类别变量。 对于x和y,我想手动设置两个图的下限,但将上界保留为Seaborn默认值。这是一个简单的例子: import pandas as pd import seaborn as sns import random n = 200 random.seed(2014) base_x = [random.random() for i in range(n)] base_y = [2*i for i in base_x] errors = [random.uniform(0,1) for i in range(n)] y = [i+j for i,j in zip(base_y,errors)] df = pd.DataFrame({'X': base_x, 'Y': y, …
85 python  pandas  seaborn 

6
熊猫中merge()和concat()之间的差异
pd.DataFrame.merge()和之间的本质区别是pd.concat()什么? 到目前为止,这是我发现的,请评论我的理解是多么完整和准确: .merge()只能使用列(加上行索引),并且在语义上适合于数据库样式的操作。.concat()可以与任一轴一起使用,仅使用索引,并提供添加分层索引的选项。 顺便提及,这允许以下冗余:两者都可以使用行索引组合两个数据帧。 pd.DataFrame.join() 只是为以下用例的一部分提供了简写 .merge() (Pandas非常擅长解决数据分析中的各种用例。探索文档以找出执行特定任务的最佳方法可能有些艰巨。)
85 python  pandas  join  merge  concat 

3
计算两列之间的Pandas DataFrame时间差异(以小时和分钟为单位)
我在数据框中有两列fromdate和todate。 import pandas as pd data = {'todate': [pd.Timestamp('2014-01-24 13:03:12.050000'), pd.Timestamp('2014-01-27 11:57:18.240000'), pd.Timestamp('2014-01-23 10:07:47.660000')], 'fromdate': [pd.Timestamp('2014-01-26 23:41:21.870000'), pd.Timestamp('2014-01-27 15:38:22.540000'), pd.Timestamp('2014-01-23 18:50:41.420000')]} df = pd.DataFrame(data) 我添加了一个新列,diff以使用找出两个日期之间的差异 df['diff'] = df['fromdate'] - df['todate'] 我得到了该diff列,但是days当超过24小时时,它包含。 todate fromdate diff 0 2014-01-24 13:03:12.050 2014-01-26 23:41:21.870 2 days 10:38:09.820000 1 2014-01-27 11:57:18.240 2014-01-27 15:38:22.540 0 days 03:41:04.300000 …

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.