[英]Python Pandas loc keyerror
import pandas as pd
import matplotlib.pyplot as plt
eurusd = pd.read_csv("G:\Kuliah python\EURUSD_M15.csv",sep="\t")
print(eurusd.loc['2020-04-03 21:15'])
它顯示一個錯誤:
KeyError: '2020-04-03 21:15'
<table><tbody><tr><th><th>Time</th><th>Open</th><th>High</th><th>Low</th><th>Close</th><th>Volume</th><th> </th></tr><tr><td>0</td><td>2020-04-03 21:00:00</td><td>1.07893</td><td>1.07936</td><td>1.07839</td><td>1.07868</td><td>4380</td></tr><tr><td>1</td><td>2020-04-03 21:15:00</td><td>1.07867</td><td>1.07943</td><td>1.07831</td><td>1.07889</td><td>4860</td></tr><tr><td>2</td><td>2020-04-03 21:30:00</td><td>1.07888</td><td>1.07908</td><td>1.07762</td><td>1.07783</td><td>4022</td></tr><tr><td>3</td><td>2020-04-03 21:45:00</td><td>1.07782</td><td>1.08059</td><td>1.07727</td><td>1.07975</td><td>6816</td></tr><tr><td>4</td><td>2020-04-03 22:00:00</td><td>1.07975</td><td>1.08093</td><td>1.07920</td><td>1.08059</td><td>582</td></tr></tbody></table>
我會試一試:將第一列設置為索引,並且 your.loc[] 索引可以正常工作。
eurusd = pd.DataFrame(
[['2020-04-03 21:00:00', 1.07893, 1.07936, 1.07839, 1.07868, 4380],
['2020-04-03 21:15:00', 1.07867, 1.07943, 1.07831, 1.07889, 4860],
['2020-04-03 21:30:00', 1.07888, 1.07908, 1.07762, 1.07783, 4022],
['2020-04-03 21:45:00', 1.07782, 1.08059, 1.07727, 1.07975, 6816],
['2020-04-03 22:00:00', 1.07975, 1.08093, 1.07920, 1.08059, 582]]
).set_index(0)
eurusd.loc['2020-04-03 21:15:00']
1 1.07867
2 1.07943
3 1.07831
4 1.07889
5 4860.00000
Name: 2020-04-03 21:15:00, dtype: float64
您可以通過將索引設為 DateTimeIndex 來進一步改進這一點:
eurusd.index = pd.to_datetime(eurusd.index)
這允許“部分字符串索引”,如
eurusd.loc['2020-04-03 21']
2020-04-03 21:00:00 1.07893 1.07936 1.07839 1.07868 4380
2020-04-03 21:15:00 1.07867 1.07943 1.07831 1.07889 4860
2020-04-03 21:30:00 1.07888 1.07908 1.07762 1.07783 4022
2020-04-03 21:45:00 1.07782 1.08059 1.07727 1.07975 6816
這為您提供了 21:00 到 22:00 之間的所有行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.