【发布时间】:2019-08-25 12:57:59
【问题描述】:
我有一个名为 data 的 DataFrame,其中包含每台笔记本电脑的日期和价格。
Acer Mac Toshiba
date
2019-01-04 754.23 1173.08 969.15
2019-01-05 753.69 1176.14 969.42
2019-01-11 754.21 1171.56 970.30
2019-01-28 752.61 1153.29 964.96
2019-01-29 753.43 1148.72 964.43
2019-02-03 754.27 1157.23 966.60
2019-02-04 752.97 1150.68 964.72
2019-02-09 753.25 1152.49 965.20
2019-02-19 754.25 1154.49 963.20
2019-02-26 752.25 1155.49 962.20
2019-03-01 753.48 1153.13 966.18
2019-03-30 753.49 1156.94 966.96
我有另一个名为笔记本电脑的 DataFrame,其中包含开始和结束日期
start end Laptop
2019-01-29 2010-01-04 2010-01-29 Acer
2019-02-26 2010-02-03 2010-02-26 Toshiba
2019-03-30 2019-03-01 2019-03-30 Mac
如何打印日期范围内第二个 DataFrame 中所述的笔记本电脑价格,如下所示:
Laptop Price
date
2019-01-04 Acer 754.23
2019-01-05 Acer 753.69
2019-01-11 Acer 754.21
2019-01-28 Acer 752.61
2019-01-29 Acer 753.43
2019-02-03 Toshiba 966.60
2019-02-04 Toshiba 964.72
2019-02-09 Toshiba 965.20
2019-02-19 Toshiba 963.20
2019-02-26 Toshiba 962.20
2019-03-01 Mac 1153.13
2019-03-30 Mac 1156.94
以下是我所拥有的,但它不打印价格:
for date in data.index:
for date1 in laptop['end']:
if date == date1:
start = laptop['start']
end = laptop['end']
laptop = laptop['Laptop']
p = data.loc[start: end, laptop] #to search for the prices for the laptop chosen in the respective date range
print(p)
我收到以下错误:
ValueError:基于位置的索引只能有 [标签(必须在索引中)、标签切片(包括两个端点!如果索引是整数,则可以是整数切片)、标签列表、布尔] 类型
任何帮助将不胜感激。
【问题讨论】: