输入 ID 时打印行的用户定义函数

User-defined function to print line when ID is entered

df= pd.read_csv('portfolios.csv') 
df1 = df.set_index('id');df
df1

大家好,我不知道如何开始。我在这里附上了一张照片。请问如何定义用户函数,通过输入 id,我将获得整行?

感谢你们的帮助。问题:

用于一行 DataFrame 使用 loc 和双 [] 而对于 Series 只有一个 []:

df = pd.DataFrame({'id':[1,2,3,4,5,6],
                   'B':[4,5,4,5,5,4],
                   'C':[7,8,9,4,2,3],
                   'D':[1,3,5,7,1,0],
                   'E':[5,3,6,9,2,4],
                   'F':list('aaabbb')})

df1 = df.set_index('id')
print (df1)
    B  C  D  E  F
id               
1   4  7  1  5  a
2   5  8  3  3  a
3   4  9  5  6  a
4   5  4  7  9  b
5   5  2  1  2  b
6   4  3  0  4  b

def get_line1(x, val):
    row = x.loc[[val]]
    return row

def get_line2(x, val):
    row = x.loc[val]
    return row

out = get_line1(df1, 5)
print (out)
    B  C  D  E  F
id               
5   5  2  1  2  b

out = get_line2(df1, 5)
print (out)
B    5
C    2
D    1
E    2
F    b
Name: 5, dtype: object