Python 熊猫中未识别索引

Python 熊猫中未识别索引,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个主数据帧“master_df”,在一列中有日期,在另一列中有数据帧列表 在master_df中的每个数据帧中都有一列日期,以及与每个日期相关联的价格 我试着做了以下几点: prices = [] for index, row in master_df.iterrows(): pre_data = pd.read_csv(Path + row['Dataframe'] + '.csv') data = pre_data.set_index('Date') price

我有一个主数据帧“master_df”,在一列中有日期,在另一列中有数据帧列表

在master_df中的每个数据帧中都有一列日期,以及与每个日期相关联的价格

我试着做了以下几点:

prices = []
for index, row in master_df.iterrows():
    pre_data = pd.read_csv(Path + row['Dataframe'] + '.csv')
    data = pre_data.set_index('Date')
    prices.append(data.loc[row['Date'], 'Price'])
这将产生以下错误: '标签[12/22/2002]不在索引中'

令人困惑的是,当我做同样的事情,但手动输入日期时,它会起作用:

for index, row in master_df.iterrows():
    pre_data = pd.read_csv(Path + row['Dataframe'] + '.csv')
    data = pre_data.set_index('Date')
    prices.append(data.loc['12/22/2002', 'Price'])
在我将索引设置为date之后,我检查了它的数据类型,它是一个字符串。我被难住了,为什么当我用“row['Date']”抓取时它不起作用,而当它被读取为字符串时,它却在手动输入时起作用

我意识到可能有更简单的方法来获取这些价格,请记住这是一个大型复杂函数的一部分,所以我只是想找出这个具体的错误。换句话说,我必须用第['Date'行]抓住它。请告知我如何解决此错误


谢谢大家!

在“日期”列中,master_df中的数据类型是什么?可能是日期?如果是,那么 行['Date'].strftime(“%m/%d/%Y”)应该有帮助

prices = []
for index, row in master_df.iterrows():
    pre_data = pd.read_csv(Path + row['Dataframe'] + '.csv')
    data = pre_data.set_index('Date')
    prices.append(data.loc[row['Date'].strftime("%m/%d/%Y"), 'Price'])

看起来pandas在列表中有您的字符串,例如
['12/22/2002']
,您需要
'12/22/2002'
。请尝试
行['Date'].值
行['Date'].T.values
如果可能,发布一个pre_数据和我尝试过的行['Date']的数据示例。值和行['Date'].T.values,但不幸的是两者都没有起作用。如果不显示数据帧或使用
dataframe.dtypes
,我不确定如何将数据存储在这两个数据帧中。您可能需要
.astype(str)
pd.to\u datetime()
取决于您是否将列作为字符串存储在行/master_df和数据中。请举例说明您的数据是什么样子。pre_data包含列“Contract Name”(即子数据框的名称)、“Date”和“Price”,它在master_df中是字符串格式,就像我在检查行上的数据类型时所说的那样['Date'],它返回