數據處理,去掉數據前後20%,然後取平均


# 沒有測(0,0)
# 讀取文件
# 排序
# 去掉首尾20%
# 取平均
# 保存數據
# 繪製圖像
import numpy as np
import json
 
filter_data = 'filter_data.json'
 
 
def read_uwb_data(name):
    x = []
    f = open('UWBdata/%s.txt' % name)
    for i in f.readlines():
        a = i.strip().split(",")
        x.append([float(a[-3]), float(a[-2]), float(a[-1])])
    return x
 
 
def takeFirst(elem):
    return elem[0]
 
 
def sort_data(x)://按照第一個元素排序
    x.sort(key=takeFirst)
 
 
def delete_start_end(x):
    delete_length = len(x) // 5
    return x[delete_length:-delete_length]
 
 
def get_average(x):
    a = np.mean(x, axis=0)
    return a
 
 
desk_location = [{}]
for i in range(26 - 6):
    x = read_uwb_data(i + 7)
    sort_data(x)
    x = delete_start_end(x)
    a = get_average(x)
    desk_location[0][i + 7] = [a[0], a[1]]
 
print(desk_location)
# desk_location = json.dumps(desk_location)
json.dump(desk_location, open(filter_data, "w"))
print(desk_location)
 
————————————————
版權聲明:本文爲CSDN博主「0點51 勝」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/dss875914213/article/details/103151730

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章