草庐IT

dataframe

全部标签

python - GroupBy pandas DataFrame 并选择最常见的值

我有一个包含三个字符串列的数据框。我知道第三列中唯一的一个值对于前两个的每个组合都是有效的。要清理数据,我必须按数据框按前两列分组,并为每个组合选择第三列的最常见值。我的代码:importpandasaspdfromscipyimportstatssource=pd.DataFrame({'Country':['USA','USA','Russia','USA'],'City':['New-York','New-York','Sankt-Petersburg','New-York'],'Shortname':['NY','New','Spb','NY']})printsource.gr

python - GroupBy pandas DataFrame 并选择最常见的值

我有一个包含三个字符串列的数据框。我知道第三列中唯一的一个值对于前两个的每个组合都是有效的。要清理数据,我必须按数据框按前两列分组,并为每个组合选择第三列的最常见值。我的代码:importpandasaspdfromscipyimportstatssource=pd.DataFrame({'Country':['USA','USA','Russia','USA'],'City':['New-York','New-York','Sankt-Petersburg','New-York'],'Shortname':['NY','New','Spb','NY']})printsource.gr

python - 如何在特定列中选择具有 NaN 的行?

鉴于此数据框,如何仅选择“Col2”等于NaN的那些行?df=pd.DataFrame([range(3),[0,np.NaN,0],[0,0,np.NaN],range(3),range(3)],columns=["Col1","Col2","Col3"])看起来像:012001210NaN0200NaN30124012结果应该是这个:01210NaN0 最佳答案 尝试以下方法:df[df['Col2'].isnull()] 关于python-如何在特定列中选择具有NaN的行?,我们在

python - 如何在特定列中选择具有 NaN 的行?

鉴于此数据框,如何仅选择“Col2”等于NaN的那些行?df=pd.DataFrame([range(3),[0,np.NaN,0],[0,0,np.NaN],range(3),range(3)],columns=["Col1","Col2","Col3"])看起来像:012001210NaN0200NaN30124012结果应该是这个:01210NaN0 最佳答案 尝试以下方法:df[df['Col2'].isnull()] 关于python-如何在特定列中选择具有NaN的行?,我们在

python - 将 Pandas 数据框转换为系列

我对Pandas有点陌生。我有一个1行x23列的pandas数据框。我想把它转换成一个系列?我想知道最pythonic的方法是什么?我试过pd.Series(myResults)但它提示ValueError:cannotcopysequencewithsize23toarrayaxiswithdimension1。意识到它仍然是数学术语中的“向量”还不够聪明。谢谢! 最佳答案 您可以转置单行数据帧(仍会产生数据帧),然后squeeze结果成一个系列(to_frame的倒数)。df=pd.DataFrame([list(range(5

python - 将 Pandas 数据框转换为系列

我对Pandas有点陌生。我有一个1行x23列的pandas数据框。我想把它转换成一个系列?我想知道最pythonic的方法是什么?我试过pd.Series(myResults)但它提示ValueError:cannotcopysequencewithsize23toarrayaxiswithdimension1。意识到它仍然是数学术语中的“向量”还不够聪明。谢谢! 最佳答案 您可以转置单行数据帧(仍会产生数据帧),然后squeeze结果成一个系列(to_frame的倒数)。df=pd.DataFrame([list(range(5

python - 如何使用来自多列的值对 Pandas 数据框进行排序?

我有以下数据框:df=pandas.DataFrame([{'c1':3,'c2':10},{'c1':2,'c2':30},{'c1':1,'c2':20},{'c1':2,'c2':15},{'c1':2,'c2':100}])或者,以人类可读的形式:c1c2031012302120321542100以下排序命令按预期工作:df.sort(['c1','c2'],ascending=False)输出:c1c2031042100123032152120但是下面的命令:df.sort(['c1','c2'],ascending=[False,True])结果c1c22120321512

python - 如何使用来自多列的值对 Pandas 数据框进行排序?

我有以下数据框:df=pandas.DataFrame([{'c1':3,'c2':10},{'c1':2,'c2':30},{'c1':1,'c2':20},{'c1':2,'c2':15},{'c1':2,'c2':100}])或者,以人类可读的形式:c1c2031012302120321542100以下排序命令按预期工作:df.sort(['c1','c2'],ascending=False)输出:c1c2031042100123032152120但是下面的命令:df.sort(['c1','c2'],ascending=[False,True])结果c1c22120321512

python - 如何从 Pandas DataFrame header 中去除空格?

我正在解析Excel文件中的数据,该文件的某些列标题中有多余的空格。当我使用df.columns检查生成的数据框的列时,我看到:Index(['Year','Month','Value'])^#Notetheunwantedtrailingspaceon'Month'因此,我做不到:df["月份"]因为它会告诉我找不到该列,因为我要求的是“月”,而不是“月”。那么,我的问题是如何去除列标题中不需要的空白? 最佳答案 您可以将函数赋予rename方法。str.strip()方法应该做你想做的事:In[5]:dfOut[5]:YearM

python - 如何从 Pandas DataFrame header 中去除空格?

我正在解析Excel文件中的数据,该文件的某些列标题中有多余的空格。当我使用df.columns检查生成的数据框的列时,我看到:Index(['Year','Month','Value'])^#Notetheunwantedtrailingspaceon'Month'因此,我做不到:df["月份"]因为它会告诉我找不到该列,因为我要求的是“月”,而不是“月”。那么,我的问题是如何去除列标题中不需要的空白? 最佳答案 您可以将函数赋予rename方法。str.strip()方法应该做你想做的事:In[5]:dfOut[5]:YearM