2017-10-21 102 views
0

我想用两个参数创建一个函数,它返回名称列中的某个特定名称。第一个参数是现有的数据框,第二个参数是名称。我知道如何从行提取特定的值,但把它在多参数的函数是我的问题:从函数返回列值的Python函数

def returnDataForOneName(namesDF, name): 
    for string in name: 
    ?--> return [string.values() for string in namesDF] 

我想与我现有的CSV文件中的一个测试功能:

import pandas as pd 
    datapath = 'C:\Users\namefile.csv' 
    namesDF = pd.read_csv(datapath) 
    newDF = returnDataForOneName(nameDF, 'Tim') 
+1

给定一个名称,你想....返回名称?你想要返回什么名字?你能解释你想做什么吗?这里有很多错误,我不知道从哪里开始。 –

回答

0

你可以用一个简单的索引来解决这个问题,不需要函数:

newDf = nameDf[nameDf['name'] == 'Tim']] 

希望这有助于!

+0

如果我想有一个函数,用户可以返回他们输入到函数中的任何名称,我怎么能这样做? – pdangelo4

+0

如果您想返回任何名称,可以使用Python 3中的input()函数来收集用户的输入,然后用输入变量替换“Tim”。 [input()函数文档](https://docs.python.org/3/library/functions.html#input) – jaguar