输入 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
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