43 lines
1.2 KiB
Python
43 lines
1.2 KiB
Python
|
|
import pandas as pd
|
|||
|
|
df = pd.read_csv('D:/temperature.csv')
|
|||
|
|
data = df.iloc[:, 1].tolist()
|
|||
|
|
max_value = max(data)
|
|||
|
|
max_index = len(data) - 1 - data[::-1].index(max_value)
|
|||
|
|
result = data#[:max_index+1]
|
|||
|
|
tempMap = {}
|
|||
|
|
for i in range(len(result)):
|
|||
|
|
if result[i] in tempMap:
|
|||
|
|
tempMap[result[i]] += 1
|
|||
|
|
else:
|
|||
|
|
tempMap[result[i]] = 1
|
|||
|
|
# 删除键值小于50的条目
|
|||
|
|
tempMap = {key: value for key, value in tempMap.items() if value >= 8}
|
|||
|
|
# 过滤key接近的条目
|
|||
|
|
filtered_tempMap = {}
|
|||
|
|
|
|||
|
|
prev_key = None
|
|||
|
|
prev_value = None
|
|||
|
|
start_key = None
|
|||
|
|
index = 0
|
|||
|
|
for key, value in tempMap.items():
|
|||
|
|
if prev_key is not None and prev_value is not None:
|
|||
|
|
if start_key is None:
|
|||
|
|
start_key = prev_key
|
|||
|
|
if abs(key - start_key) <=1:
|
|||
|
|
if value > prev_value:
|
|||
|
|
filtered_tempMap[index] = f"{key}:{value}"
|
|||
|
|
else:
|
|||
|
|
filtered_tempMap[index] = f"{prev_key}:{prev_value}"
|
|||
|
|
else:
|
|||
|
|
start_key = key
|
|||
|
|
filtered_tempMap[index] = f"{prev_key}:{prev_value}"
|
|||
|
|
# print("skip:", key, value)
|
|||
|
|
index += 1
|
|||
|
|
|
|||
|
|
prev_key = key
|
|||
|
|
prev_value = value
|
|||
|
|
# print(prev_key, prev_value)
|
|||
|
|
print(filtered_tempMap)
|
|||
|
|
|
|||
|
|
|