我有一个包含曲目ID的列表tids
。我要在数据框res
上查找这些轨道ID,然后给我一个轨道标题列表。
我的代码基于此处给出的代码:Look up and replace values in a list (pandas)
但它只是让我再次回到赛道ID。
然后我尝试调整下面的代码,但是这让我回到了列表中的一个字典(所以最后的print [0]似乎返回了所有内容)。我当然可以用这个来提取音轨标题,但是想知道我的做法我做错了什么?
def convertTrackIDToTrackName(dbPath, tids):
con = sqlite3.connect(dbPath)
sqlStr = "SELECT track_id, title from songs"
# Load into Pandas
res = pd.read_sql_query(sqlStr, con)
con.close()
res = res.set_index('track_id')
z_new = [res.get('title',t) for t in tids]
print (z_new[0])
答案 0 :(得分:1)
使用pd.Series
,map
和tolist
:
s = pd.Series(tids).map(res['title']).tolist()