草庐IT

pyhton_Pandas

全部标签

python - 在 Pandas 中重命名 "None"值

这可能非常简单,但我就是找不到答案。我使用GeoPandas从形状文件导入数据。将其转换为pandasDataFrame。我有一个包含三个字母代码和None缺失数据值的对象字段。如何在pandas中将None更改为类似“vcv”的内容?我试过了sala.replace(None,"vcv")遇到这个错误2400"stringsorregularexpressions,you"2401"passeda"->2402"{0!r}".format(type(regex).__name__))2403returnself.replace(regex,value,inplace=inplace,

python - 如何在 Pandas 中读取带有行名的数据框的 CSV 文件

我有一个如下所示的CSV文件(tmp.csv):xyzbar0.550.550.0foo0.30.40.1qux0.00.35.55它是用Pandas以这种方式创建的:In[103]:df_dummyOut[103]:xyzbar0.550.550.00foo0.300.400.10qux0.000.305.55In[104]:df_dummy.to_csv("tmp.csv",sep="\t")我想做的是将该CSV读入相同的数据帧表示形式。我试过了,但没有给出我想要的:In[108]:pd.io.parsers.read_csv("tmp.csv",sep="\t")Out[108]

python - 用 Bokeh 绘制整个 pandas DataFrame

我想用Bokeh绘制整个pandasDataFrame。即,我正在寻找相当于第三行的Bokeh:importpandasaspdincome_df=pd.read_csv("income_2013_dollars.csv",sep='\t',thousands=',')income_df.plot(x="year")目前有办法做到这一点,还是我必须分别传递每个y值? 最佳答案 来自Bokeh项目维护者的注释:这个答案指的是一个过时且已弃用的API,该API早已从Bokeh中删除。有关使用现代且完全受支持的BokehAPI创建条形图的

python - ipython笔记本中的 Pandas 子图标题大小

我在ipython笔记本单元格中并排绘制了两个图。但是,我无法更改标题的大小。我可以通过添加参数fontsize=20来更改标签的大小。如何更改df和df2的标题。fig,axes=plt.subplots(ncols=2,figsize=(20,10))df.plot('barh',title='LegalCollectibleAnswerDistribution',fontsize=20,ax=axes[0])df2.plot(kind='pie',autopct='%1.0f%%',legend=False,title='LegalCollectibleAnswerDistrib

python - Pandas:如何在 DataFrame 中按行比较列表的列与 Pandas(不是 for 循环)?

数据框df=pd.DataFrame({'A':[['gener'],['gener'],['system'],['system'],['gutter'],['gutter'],['gutter'],['gutter'],['gutter'],['gutter'],['aluminum'],['aluminum'],['aluminum'],['aluminum'],['aluminum'],['aluminum'],['aluminum'],['aluminum'],['aluminum'],['aluminum','toledo']],'B':[['gutter'],['gutte

python - Pandas groupby 和 rolling_apply 忽略 NaN

我有一个pandas数据框,我想计算列的滚动平均值(在groupby子句之后)。但是,我想排除NaN。例如,如果groupby返回[2,NaN,1],则结果应为1.5,而当前它返回NaN。我尝试了以下方法,但似乎不起作用:df.groupby(by=['var1'])['value'].apply(pd.rolling_apply,3,lambdax:np.mean([iforiinxifiisnotnp.nanandi!='NaN']))如果我什至尝试这样做:df.groupby(by=['var1'])['value'].apply(pd.rolling_apply,3,lambd

python - Pandas 相当于整数索引的重采样

我正在寻找一个pandas等效于resample方法的数据帧,它不是DatetimeIndex而是一个整数数组,甚至可能是float。我知道在某些情况下(例如thisone),重采样方法可以很容易地用重新索引和插值代替,但在某些情况下(我认为)它不能。例如,如果我有df=pd.DataFrame(np.random.randn(10,2))withdates=df.set_index(pd.date_range('2012-01-01',periods=10))withdates.resample('5D',np.std)这给了我012012-01-011.1845820.492113

python - 与 Pandas 的加权相关系数

有什么方法可以用pandas计算加权相关系数吗?我看到R有这样的方法。另外,我想获得相关性的p值。我在R中也没有找到这个。链接到维基百科以获取有关加权相关性的解释:https://en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient#Weighted_correlation_coefficient 最佳答案 我不知道有任何Python包实现了这一点,但推出您自己的实现应该相当简单。使用维基百科文章的命名约定:defm(x,w):"""Weighted

python - 将 pandas 数据框从行 reshape 为列

我正在尝试reshape我的数据。乍一看,这听起来像是转置,但实际上不是。我尝试了熔化、堆叠/取消堆叠、连接等。用例我希望每个独特的个人只有一行,并将所有工作历史记录在列中。对于客户而言,跨行阅读信息比逐列阅读更容易。这是数据:importpandasaspdimportnumpyasnpdata1={'Name':["Joe","Joe","Joe","Jane","Jane"],'Job':["Analyst","Manager","Director","Analyst","Manager"],'JobEffDate':["1/1/2015","1/1/2016","7/1/201

python - 如何摆脱 pandas 将 excel 表中的大数字转换为指数?

在excel表中,我有两列数字很大。但是当我使用read_excel()读取excel文件并显示数据框时,这两列以带指数的科学格式打印。如何摆脱这种格式?谢谢Pandas输出 最佳答案 应用科学记数法的方式通过pandas的显示控制options:pd.set_option('display.float_format','{:.2f}'.format)df=pd.DataFrame({'TradedValue':[67867869890077.96,78973434444543.44],'Deals':[789797,789878]