草庐IT

sample_dataframe

全部标签

python - 切片 DataFrame 后如何更新 pandas MultiIndex 的级别?

我有一个带有pandasMultiIndex的Dataframe:In[1]:importpandasaspdIn[2]:multi_index=pd.MultiIndex.from_product([['CAN','USA'],['total']],names=['country','sex'])In[3]:df=pd.DataFrame({'pop':[35,318]},index=multi_index)In[4]:dfOut[4]:popcountrysexCANtotal35USAtotal318然后我从该DataFrame中删除一些行:In[5]:df=df.query('

python - 切片 DataFrame 后如何更新 pandas MultiIndex 的级别?

我有一个带有pandasMultiIndex的Dataframe:In[1]:importpandasaspdIn[2]:multi_index=pd.MultiIndex.from_product([['CAN','USA'],['total']],names=['country','sex'])In[3]:df=pd.DataFrame({'pop':[35,318]},index=multi_index)In[4]:dfOut[4]:popcountrysexCANtotal35USAtotal318然后我从该DataFrame中删除一些行:In[5]:df=df.query('

python - pandas DataFrame 的序列化

有没有一种快速序列化DataFrame的方法?我有一个可以并行运行pandas分析的网格系统。最后,我想从每个网格作业中收集所有结果(作为DataFrame)并将它们聚合到一个巨大的DataFrame中。如何以可以快速加载的二进制格式保存数据帧? 最佳答案 最简单的方法就是使用to_pickle(作为pickle),参见picklingfromthedocsapipage:df.to_pickle(file_name)另一种选择是使用HDF5(建立在PyTables上)。入门的工作量稍微多一些,但查询的内容要丰富得多。

python - pandas DataFrame 的序列化

有没有一种快速序列化DataFrame的方法?我有一个可以并行运行pandas分析的网格系统。最后,我想从每个网格作业中收集所有结果(作为DataFrame)并将它们聚合到一个巨大的DataFrame中。如何以可以快速加载的二进制格式保存数据帧? 最佳答案 最简单的方法就是使用to_pickle(作为pickle),参见picklingfromthedocsapipage:df.to_pickle(file_name)另一种选择是使用HDF5(建立在PyTables上)。入门的工作量稍微多一些,但查询的内容要丰富得多。

python - 按另一个索引的顺序对 Pandas Dataframe 进行排序

假设我有两个共享相同索引的数据帧df1和df2。df1按照我希望df2排序的顺序排序。df=pd.DataFrame(index=['Arizona','NewMexico','Colorado'],columns=['A','B','C'],data=[[1,2,3],[4,5,6],[7,8,9]])printdfABCArizona123NewMexico456Colorado789df2=pd.DataFrame(index=['Arizona','Colorado','NewMexico'],columns=['D'],data=['Orange','Blue','Green

python - 按另一个索引的顺序对 Pandas Dataframe 进行排序

假设我有两个共享相同索引的数据帧df1和df2。df1按照我希望df2排序的顺序排序。df=pd.DataFrame(index=['Arizona','NewMexico','Colorado'],columns=['A','B','C'],data=[[1,2,3],[4,5,6],[7,8,9]])printdfABCArizona123NewMexico456Colorado789df2=pd.DataFrame(index=['Arizona','Colorado','NewMexico'],columns=['D'],data=['Orange','Blue','Green

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

python Pandas : select columns with all zero entries in dataframe

给定一个数据框,如何找出所有只有0作为值的列?df01234567000010010111000111预期输出24000100 最佳答案 我只是将值与0进行比较并使用.all():>>>df=pd.DataFrame(np.random.randint(0,2,(2,8)))>>>df01234567000010010111000111>>>df==0012345670TrueTrueTrueFalseTrueTrueFalseTrue1FalseFalseTrueTrueTrueFalseFalseFalse>>>(df==0).

python Pandas : select columns with all zero entries in dataframe

给定一个数据框,如何找出所有只有0作为值的列?df01234567000010010111000111预期输出24000100 最佳答案 我只是将值与0进行比较并使用.all():>>>df=pd.DataFrame(np.random.randint(0,2,(2,8)))>>>df01234567000010010111000111>>>df==0012345670TrueTrueTrueFalseTrueTrueFalseTrue1FalseFalseTrueTrueTrueFalseFalseFalse>>>(df==0).