pandas Python:如何创建一个函数来根据另一列的输入返回特定的列?[已关闭]

ffx8fchx  于 2023-02-11  发布在  Python
关注(0)|答案(1)|浏览(107)

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
3天前关闭。
Improve this question
有没有办法创建一个函数,根据从另一列中选择的值返回两列?
样品df:

one  two   three  year
12   34    561    2001
2    67    781    1999 
34   12    90     2001    
5    67    89     2011

期望输出

one  two  
12   34   
34   12

我的代码到目前为止:

def one_two(year):
 return df.loc[df['year'] == year,['one','two']].sort_values(by='one')

#when I input a year:

one_two(2001)

#my output is just the column names

one  two
ddrv8njm

ddrv8njm1#

尝试使用以下代码来解决您的问题:

import pandas as pd

data = [[12, 34, 561, 2001],
        [2, 67, 781, 1999],
        [34, 12, 90, 2001],
        [5, 67, 89, 2011]]

df = pd.DataFrame(data, columns=["one", "two", "three", "year"])

def one_two(year):
 return df.loc[df['year'] == year,['one','two']].sort_values(by='one').reset_index(drop=True)

#when I input a year:

one_two(2001)
    • 结果:**

相关问题