Как объединить несколько списков в список в python: numpy.mean () - PullRequest
1 голос
/ 11 апреля 2019

У меня проблемы с объединением списков в список

Вот что я пробовал

import os,glob
from PIL import Image
from skimage import io
import numpy as np
from statistics import stdev 

path = "/Users/Xin/Desktop/SVM-Image-Classification-master/test"
# Delete images with the low pixel value
for filename in os.listdir(path):
    images = Image.open(os.path.join(path,filename))  
    value = [round(np.mean(images).tolist(),2)]
    print(value)
    print(type(value))
    #if np.mean(images) < 20:
        #os.remove(os.path.join(path, filename))
#print(len(os.listdir(path)))

Вывод следующим образом

[12.69]
<class 'list'>
[14.46]
<class 'list'>
[12.25]
<class 'list'>
[9.51]
<class 'list'>
[18.7]
<class 'list'>
[10.0]
<class 'list'>
[18.13]
<class 'list'>
[12.63]
<class 'list'>

Что мне нужнообъединяет вышеперечисленные списки в список, чтобы я мог выполнить функцию sum (), чтобы получить общее значение

Кто-нибудь может мне помочь?Спасибо

Ответы [ 2 ]

1 голос
/ 11 апреля 2019

Попробуйте следующим образом

from numpy import array
from numpy import sum
sum_list = []
for filename in os.listdir(path):
    images = Image.open(os.path.join(path,filename))  
    value = [round(np.mean(images).tolist(),2)]
    sum_list.append(value)
v = array(sum_list)
return sum(v)
0 голосов
/ 11 апреля 2019

Создайте список, в котором будут храниться все значения, а затем добавьте к нему:

all_values = []
for filename in os.listdir(path):
    images = Image.open(os.path.join(path,filename))  
    value = [round(np.mean(images).tolist(),2)]
    all_values = [*all_values, *value]

print(all_values)
...