草庐IT

pyhton_Pandas

全部标签

python - 从稀疏数据帧填充连续的 Pandas 数据帧

我有一个字典名称date_dict,由datetime日期键入,其值对应于观察的整数计数。我将其转换为稀疏系列/数据框,其中包含我想加入的经过审查的观察结果,或者转换为具有连续日期的系列/数据框。令人讨厌的列表理解是我绕过pandas显然不会自动将datetime日期对象转换为适当的DateTime索引这一事实的技巧。df1=pd.DataFrame(data=date_dict.values(),index=[datetime.datetime.combine(i,datetime.time())foriindate_dict.keys()],columns=['Name'])df1

python - 从稀疏数据帧填充连续的 Pandas 数据帧

我有一个字典名称date_dict,由datetime日期键入,其值对应于观察的整数计数。我将其转换为稀疏系列/数据框,其中包含我想加入的经过审查的观察结果,或者转换为具有连续日期的系列/数据框。令人讨厌的列表理解是我绕过pandas显然不会自动将datetime日期对象转换为适当的DateTime索引这一事实的技巧。df1=pd.DataFrame(data=date_dict.values(),index=[datetime.datetime.combine(i,datetime.time())foriindate_dict.keys()],columns=['Name'])df1

python - Pandas 删除超出时间范围的行

我正在尝试遍历DataFrame索引中的每一行并删除不在特定时间之间的所有行。我一直在寻找解决方案,但没有一个将日期与时间分开,我只想删除时间范围之外的行。 最佳答案 您可以使用between_time直接函数:ts.between_time(datetime.time(18),datetime.time(9),include_start=False,include_end=False)原始答案:您可以使用indexer_between_timeIndex方法。例如,要包括上午9点到下午6点之间的时间(包括):ts.ix[ts.in

python - Pandas 删除超出时间范围的行

我正在尝试遍历DataFrame索引中的每一行并删除不在特定时间之间的所有行。我一直在寻找解决方案,但没有一个将日期与时间分开,我只想删除时间范围之外的行。 最佳答案 您可以使用between_time直接函数:ts.between_time(datetime.time(18),datetime.time(9),include_start=False,include_end=False)原始答案:您可以使用indexer_between_timeIndex方法。例如,要包括上午9点到下午6点之间的时间(包括):ts.ix[ts.in

python - 将 Pandas 数据框中的行和上一行与数百万行进行比较的最快方法

我正在寻找解决方案来加速我编写的用于循环遍历pandas数据框并比较当前行和前一行之间的列值的函数。例如,这是我的问题的简化版本:UserTimeCol1newcol1newcol2newcol3newcol4016[cat,dog,goat]0000116[cat,sheep]00002112[sheep,goat]0000323[cat,lion]0000425[fish,goat,lemur]0000539[cat,dog]0000644[dog,goat]00007411[cat]0000目前我有一个函数可以循环并计算“newcol1”的值'和'newcol2'基于是否'Use

python - 将 Pandas 数据框中的行和上一行与数百万行进行比较的最快方法

我正在寻找解决方案来加速我编写的用于循环遍历pandas数据框并比较当前行和前一行之间的列值的函数。例如,这是我的问题的简化版本:UserTimeCol1newcol1newcol2newcol3newcol4016[cat,dog,goat]0000116[cat,sheep]00002112[sheep,goat]0000323[cat,lion]0000425[fish,goat,lemur]0000539[cat,dog]0000644[dog,goat]00007411[cat]0000目前我有一个函数可以循环并计算“newcol1”的值'和'newcol2'基于是否'Use

python - Pandas 从列中可用的列表数据中扩展行

我在pandas中有一个这样的数据框:column1column2[a,b,c]1[d,e,f]2[g,h,i]3预期输出:column1column2a1b1c1d2e2f2g3h3i3如何处理这些数据? 最佳答案 DataFrame.explode自pandas>=0.25.0我们有explode为此的方法,它将列表扩展为每个元素的一行并重复其余列:df.explode('column1').reset_index(drop=True)输出column1column20a11b12c13d24e25f26g37h38i3自pan

python - Pandas 从列中可用的列表数据中扩展行

我在pandas中有一个这样的数据框:column1column2[a,b,c]1[d,e,f]2[g,h,i]3预期输出:column1column2a1b1c1d2e2f2g3h3i3如何处理这些数据? 最佳答案 DataFrame.explode自pandas>=0.25.0我们有explode为此的方法,它将列表扩展为每个元素的一行并重复其余列:df.explode('column1').reset_index(drop=True)输出column1column20a11b12c13d24e25f26g37h38i3自pan

python - 如何在 pandas DataFrame 中选择和删除具有重复名称的列

我有一个巨大的DataFrame,其中一些列具有相同的名称。当我尝试选择一个存在两次的列时,(例如deldf['colname']或df2=df['colname'])出现错误.我能做什么? 最佳答案 您可以通过索引寻址列:>>>df=pd.DataFrame([[1,2],[3,4],[5,6]],columns=['a','a'])>>>dfaa012134256>>>df.iloc[:,0]011325或者你可以重命名列,比如>>>df.columns=['a','b']>>>dfab012134256

python - 如何在 pandas DataFrame 中选择和删除具有重复名称的列

我有一个巨大的DataFrame,其中一些列具有相同的名称。当我尝试选择一个存在两次的列时,(例如deldf['colname']或df2=df['colname'])出现错误.我能做什么? 最佳答案 您可以通过索引寻址列:>>>df=pd.DataFrame([[1,2],[3,4],[5,6]],columns=['a','a'])>>>dfaa012134256>>>df.iloc[:,0]011325或者你可以重命名列,比如>>>df.columns=['a','b']>>>dfab012134256