草庐IT

python - 识别 pandas DataFrame 的列中连续出现的值

我有一个像这样的df:Count1011001110如果Count中1和连续出现两次或多次,我想在新列中返回1code>0如果没有。因此,在新列中,根据列Count中满足的条件,每一行都将获得1。我想要的输出将是:CountNew_Value10001111000011111100我在想我可能需要使用itertools但我一直在阅读它,但还没有找到我需要的东西。我希望能够使用此方法来计算任意数量的连续出现次数,而不仅仅是2次。例如,有时我需要计算连续出现的10次,我在这里的示例中只使用2。 最佳答案 你可以:df['consecut

python - pandas - 如何获取 groupby 对象的最后 n 组并将它们组合为数据框

如何在df.groupby()之后获取最后“n”组并将它们合并为一个数据框。data=pd.read_sql_query(sql=sqlstr,con=sql_conn,index_col='SampleTime')grouped=data.groupby(data.index.date,sort=False)完成grouped.ngroups后,我得到的组总数为277。我想合并最后12个组并生成一个数据框。 最佳答案 PandasGroupBy对象是可迭代的。要提取可迭代对象的最后n元素,通常不需要从可迭代对象创建列表并对最后n元

python - 如何将层次结构或多索引应用于 Pandas 列

我看过很多关于如何分层排列数据帧行索引的示例,但我正在尝试对列做同样的事情,但我不理解语法:给定:df=pd.DataFrame(np.random.randn(10,10),columns=['consumption','voltage','consumption','voltage','temperature','humidity','consumption','voltage','temperature','humidity'],index=pd.date_range('20000103',periods=10))>>>dfconsumptionvoltageconsumptio

python - 根据列表对 Pandas 数据框进行排序

我想对以下数据框进行排序:RegionLSENorthSouth0Cn33.3303679.1789171Develd-36.157025-27.6699882Wetnds-38.480206-46.0899083Oands-47.986764-32.3249914Otherg323.20983428.4863105Soys34.9361474.0728726Wht0.983977-14.972555我想对其进行排序,以便根据列表对LSE列进行重新排序:lst=['Oands','Wetnds','Develd','Cn','Soys','Otherg','Wht']当然,其他列也需要

python - Pandas - Python,删除基于日期列的行

我正在尝试根据一个日期列删除数据框的行;[交货日期]我需要删除超过6个月但不等于年份“1970”的行。我创建了2个变量:fromdatetimeimportdate,timedeltasixmonthago=date.today()-timedelta(188)importtimenineteen_seventy=time.strptime('01-01-70','%d-%m-%y')但我不知道如何使用[DeliveryDate]列删除基于这两个变量的行。谁能提供正确的解决方案? 最佳答案 你可以过滤掉它们:df[(df['Deli

python - 用于推断标题行的 `header=True` 的旧 pre-0.17 pandas.read_csv 行为?

旧的0.17之前版本的pandasread_csv()如何解释传递bool值header=True/False以推断标题行?我有带标题的CSV数据:col1;col2;col31.0;10.0;100.02.0;20.0;200.03.0;30.0;300.0如果用header=True读取即df=pandas.read_csv('test.csv',sep=';',header=True),给出以下数据框:1.010.0100.002202001330300这意味着pandas使用第二行(“第1行”)作为列名(推断的名称为“1.0”、“10.0”和“100.0”)。而如果使用head

python - Pandas ,将多列的多个功能应用于groupby对象

我想将多列的多个函数应用到一个groupby对象,从而产生一个新的pandas.DataFrame。我知道如何分步完成:by_user=lasts.groupby('user')elapsed_days=by_user.apply(lambdax:(x.elapsed_time*x.num_cores).sum()/86400)running_days=by_user.apply(lambdax:(x.running_time*x.num_cores).sum()/86400)user_df=elapsed_days.to_frame('elapsed_days').join(runn

python - 使用时间戳列表选择由 DatetimeIndex 索引的 Pandas DataFrame 的子集

我有一只PandasDataFrameDatetimeIndex:3425100entries,2011-12-0100:00:00to2011-12-3123:59:59Datacolumns:sig_qual3425100non-nullvaluesheave3425100non-nullvaluesnorth3425099non-nullvalueswest3425097non-nullvaluesdtypes:float64(4)我选择了DataFrame的一个子集使用.ix[start_datetime:end_datetime]然后我将其传递给peakdetectfunct

python - 如何在 Rpy2 中使用 pandas 数据帧和 numpy 数组?

我想将pandas与numpy一起用于我的所有分析,但使用Rpy2来绘制我的数据。我想使用pandas数据帧进行所有分析,然后通过rpy2使用R的完整绘图来绘制这些。py2,并且正在使用ipython进行绘图。执行此操作的正确方法是什么?我尝试的几乎所有命令都失败了。例如:我正在尝试绘制pandasDataFramedf两列之间的散点图。我希望在x/y轴中使用df的标签,就像它是R数据帧时一样。有没有办法做到这一点?当我尝试使用r.plot执行此操作时,我得到了这个乱码图:In:r.plot(df.a,df.b)#df是pandasDataFrame产量:输出:rpy2.rinterf

Python Pandas,将 DataFrame 写入固定宽度文件(to_fwf?)

我看到Pandas有read_fwf,但它有类似DataFrame.to_fwf的东西吗?我正在寻找对字段宽度、数值精度和字符串对齐的支持。DataFrame.to_csv似乎没有这样做。numpy.savetxt可以,但我不想这样做:numpy.savetxt('myfile.txt',mydataframe.to_records(),fmt='someformat')这似乎是错误的。非常感谢您的想法。 最佳答案 直到有人implements这在Pandas中,你可以使用tabulate包裹:importpandasaspdfro