【问题标题】:Index Match / VLookup a single value from a data frame to a variable索引匹配/VLookup 从数据帧到变量的单个值
【发布时间】:2022-08-19 01:37:40
【问题描述】:

我正在寻找从熊猫数据框索引的python中创建一个新变量......我会在excel中使用Index/Match或VLookup来实现这个功能。

表(在python中以df的形式):

ID       Date
0        8-18-22
1        7-18-22
2        6-20-18
3        7-04-19

我希望能够插入 ID 并将 Date 作为新变量返回

这看起来超级简单......但我已经搜索了几个小时来了解如何做到这一点,但我无法弄清楚。

---------------- 编辑 ----------------- 8-18-22 12:37 CST

根据答案,我意识到我需要编辑这个问题。

假设我的数据框如下所示:

     My_ID        DATE
0    0124        8-18-22
1    1456        7-18-22
2    2678        6-20-18
3    3589        7-04-19

我希望能够输入 \"My_ID\" 并返回 DATE。不是 DF 号的索引

  • 地图将是一个更快的选择。如果您分享可重复的示例,可以提供解决方案

标签: python pandas dataframe vlookup index-match


【解决方案1】:

如果我理解得很好,以纯粹的熊猫方式,你可以这样做

id_0 = df["Date"].loc[0] #this stores the "8-18-22" in the variable id_0

或者,如果您要继续执行相同的操作,您可以编写一个函数。

def get_date(df, id, column):
    return df[column].loc[id]

例子:

id_0 = get_date(df = df, id = 0, column = "Date") # if you print the id_0 variable it will return date 8-18-22

PS:如果您的数据框名称被称为“df”以外的其他名称,例如“my_df”

id_0 = get_date(df = my_df, id=0, column= "Date") #returns 8-18-22 

#或者

id_0 = get_date(my_df, 0, "Date") #returns 8-18-22

PS:我是初学者,所以我希望这个答案对你有用。

【讨论】:

  • 对于造成的混乱,我深表歉意...根据您的回答,我在主要问题中添加了对数据框的编辑。我正在寻找基于另一列(不是数据框的行索引)的 DATE 所以在主要问题中 - 我添加了“My_ID”列。这就是我想要输入以获取日期的内容。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-08-25
  • 2018-07-13
  • 2017-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-02
相关资源
最近更新 更多