Liste İçerisinden Belirli Aralıklarla Liste Oluşturma Sorunu

Merhaba benim böyle bir sorunum var, aslında işlediğim çok büyük bir veri ancak. basitleştirilmiş bir resim yüklüyorum.

yardım iki

bu liste içerisindeki 5 ten küçük elemanlar benim için gerekli. Ve şöyle olması lazım 5 ten küçük eleman görmediği zaman anlayıp listeleştirmesi lazım. aşağıdaki görseldeki gibi sadece kırmızı üstü çizili elemanları liste olarak yapması lazım. ilk liste 4 eleman 1,2,3,4 , ikinci liste 4,2,1,3 gibi. ilk listeyi algılatmakta sorun yok ancak, devamında da farklı listeler olarak geri kalan verileri tanımlamalı. Bunun temeli spektrum için gerekli çok fazla elemanlı listelerden oluşuyor ilgilenen olursa esas kodu da atabilirim.

Ben bu adamın yalancısıyım, adam listeyi sırala, 5 ten büyükleri al diyor.

python - Return list of items in list greater than some value - Stack Overflow

Google o kadar gelişmiş ki, ne istediğini yazıyorsun anında listeliyor.

python getting element greater than 5 in a list - Google’da Ara

Veri çok büyükse, belirli parçalar halinde listeye çekerek parça parça alabilirsin.

Belleğin yeterse tek seferde çek, sıralama için sabret tabi o da bir çözüm.

Bu da bir başka fantazi:

How to Get All Elements in a List Greater Than a Certain Value? – Finxter

Bunların hepsi verdiğim linkteki, 201.000.000 sonuçtan biriyle çözülebilir.

adamım sağolasın yardım için hallettim, googledan değilde kendim yinede teşekkürler yanıt için :slight_smile:

Nacizane bir sorunla karşılaştığınızda ilk karşılaşanın siz olduğunu düşünmeyin. Her zaman daha akıllıca bir çözüm bulan vardır. Onlara bakmakta fayda var.

İşiniz hallolduysa gerisi önemli değil. Kolay gelsin.


Esas yapmak istediğim işlemi yaptım, 0.9 altı olan verileri, aralıklara göre alt listeler haline getiriyor(0.9 üstlerini bitiş ve başlangıç alarak). birine lazım olur belki ileride

Maalesef resim anlaşılmıyor.

bkz: Soru Sorarken Sıkça Düşülen Hatalar #4

xs = [1, 2, 3, 10, 15, 4, 5, 6, 18, 7, 20, 8]
ys = itertools.chain.from_iterable([list(g[1]) for g in itertools.groupby(xs, lambda x: x<10) if g[0]])
print(list(ys))
2 Beğeni