草庐IT

pyhton_Pandas

全部标签

Python Pandas 根据标题值匹配 Vlookup 列

我有以下数据框df:Customer_ID|2015|2016|2017|Year_joined_mailingABC56102015BCD6732016DEF10452017GHI87102016我想查找客户在加入邮寄列表那一年的值(value)并将其保存在新列中。输出将是:Customer_ID|2015|2016|2017|Year_joined_mailing|Purchases_1st_yearABC561020155BCD67320167DEF104520175GHI891020169我在python中找到了一些匹配vlookup的解决方案,但没有一个会使用其他列的标题。

python - 如何保存用 'pandas.DataFrame.plot' 创建的图像?

这个问题在这里已经有了答案:Savingplots(AxesSubPlot)generatedfrompythonpandaswithmatplotlib'ssavefig(6个答案)saveapandas.Serieshistogramplottofile(4个答案)关闭2年前。当尝试从“pandas.core.series.Series”对象保存使用“pandas.DataFrame.plot”创建的绘图图像时:%matplotlibinlinetype(class_counts)#pandas.core.series.Seriesclass_counts.plot(kind='b

python - Pandas corr() 与 corrwith()

Pandas提供两种不同关联函数的原因是什么?DataFrame.corrwith(other,axis=0,drop=False):CorrelationbetweenrowsorcolumnsoftwoDataFrameobjectsComputepairwise对比DataFrame.corr(method='pearson',min_periods=1):Computepairwisecorrelationofcolumns,excludingNA/nullvalues(来自pandas0.20.3文档) 最佳答案 基本答案

python - 根据空值的百分比删除 pandas 数据框中的列

我有一个包含大约60列和200万行的数据框。一些列大部分是空的。我使用此函数计算了每列中空值的百分比。defmissing_values_table(df):mis_val=df.isnull().sum()mis_val_percent=100*df.isnull().sum()/len(df)mis_val_table=pd.concat([mis_val,mis_val_percent],axis=1)mis_val_table_ren_columns=mis_val_table.rename(columns={0:'MissingValues',1:'%ofTotalValue

python - 取 Pandas 系列中每 N 行的总和

假设s=pd.Series(range(50))00112233...48484949我怎样才能得到由每n行总和组成的新系列?当n=5时,预期结果如下所示;010135260385...82109235如果用loc或者iloc,用python循环,当然可以实现,但是我相信用Pandas的方式也可以简单的实现。此外,这是一个非常简化的示例,我不期望对序列的解释:)。我正在尝试的实际数据系列具有时间索引和每秒发生的事件数作为值。 最佳答案 GroupBy.sumN=5s.groupby(s.index//N).sum()01013526

python - 将 JSON 列快速转换为 Pandas 数据框

我正在从数据库(超过50k行)读取数据,其中一列存储为JSON。我想将其提取到Pandas数据框中。下面的代码片段工作正常但效率相当低,并且在针对整个数据库运行时确实需要很长时间。请注意,并非所有项目都具有相同的属性,并且JSON具有一些嵌套属性。我怎样才能让它更快?importpandasaspdimportjsondf=pd.read_csv('http://pastebin.com/raw/7L86m9R2',\header=None,index_col=0,names=['data'])df.data.apply(json.loads)\.apply(pd.io.json.js

python pandas.Series.isin 不区分大小写

我想用数据在列表中的DataFrame的列之一过滤掉一些行。df[df['column'].isin(mylist)]但是我发现它是区分大小写的。有没有使用不区分大小写的“.isin()”的方法? 最佳答案 一种方法是比较系列的小写或大写与列表的相同df[df['column'].str.lower().isin([x.lower()forxinmylist])]这里的优点是我们不保存对原始df或列表的任何更改,从而使操作更加高效考虑这个虚拟df:ColorVal0Green11Green12Red23Red24Blue35Blue

python - pandas 使用查询函数检查列是否为空

我有pandas数据框,我想在其上执行带有isnull()或非isnull()条件的查询函数:In[67]:df_data=pd.DataFrame({'a':[1,20,None,40,50]})In[68]:df_dataOut[68]:a01.0120.02NaN340.0450.0如果我使用这个命令:df_data.query('aisnull',engine='python')或者这个命令:df_data.query('aisnull()',engine='python')我得到一个错误:In[75]:df_data.query('aisnull',engine='pytho

python - Pandas 的 EMA 与股票的 EMA 不匹配?

我正在尝试使用Python(与Pandas)计算英特尔(INTC)每日股票数据的20天指数移动平均线(EMA)。Pandas有多种方法可以做到这一点,我也尝试过在Pandas上运行的stockstats,但它们永远不会返回与我从股票/金融网站获得的相同的EMA。我仔细检查了收盘价,它们是匹配的,但EMA总是“错误”。这是我使用的CSV:INTCStockData它包含英特尔股票(股票代码:INTC)从2016年4月20日到2018年2月1日的每日日期、月份名称、开盘价、最高价、最低价、收盘价、日均价和成交量。当我查看像MarketWatch这样的大型股票网站时或Fidelity,他们的

python - 如何将 LabelEncoder 应用于 Pandas 数据框中的特定列

我有一个由dataframe加载的数据集,其中类标签需要使用来自scikit-learn的LabelEncoder进行编码。label列是具有以下类的类标签列:[‘Standing’,‘Walking’,‘Running’,‘null’]为了执行标签编码,我尝试了以下但它不起作用。我该如何解决?fromsklearnimportpreprocessingimportpandasaspddf=pd.read_csv('dataset.csv',sep=',')df.apply(preprocessing.LabelEncoder().fit_transform(df['label']))