Python извлекает данные из набора данных и помещает в список - PullRequest
0 голосов
/ 03 сентября 2018

Я хочу найти количество определенного числа в наборе данных, меня интересует только значение list [2].

list = [
    ['W', 1, 1],
    ['N', 3, 4], 
    ['W', 4, 0], 
    ['W', 2, 0], 
    ['S', 3, 4]
]

Я думал о том, чтобы извлечь список [2] из списка и поместить в другой список, например (sortedlist), и использовать print(sortedlist.count(4)), чтобы подсчитать, сколько раз "4" встречается в выбранном наборе данных.

sortedlist = []
for counts in list:
      sortedlist.append(counts[2])

Также у меня есть еще один вопрос, после того, как список завершен, я хочу ввести текст черепахи, принимает ли команда текста черепах переменные?

Ответы [ 3 ]

0 голосов
/ 03 сентября 2018

Для подсчета 4 с на третьей позиции каждого списка в списке списков:

>>> lst = [ ['W', 1, 1], ['N', 3, 4], ['W', 4, 0], ['W', 2, 0], ['S', 3, 4] ]
>>> sum(1 for x in lst if x[2] == 4)
2

Примечание : не называйте свой список как list, поскольку он встроен в тени.

0 голосов
/ 03 сентября 2018
import pandas as pd

l = [['W', 1, 1],
    ['N', 3, 4], 
    ['W', 4, 0], 
    ['W', 2, 0], 
    ['S', 3, 4]]

l[2]
>>>
['W', 4, 0]

df = pd.DataFrame(l)

df
>>>
    0   1   2
0   W   1   1
1   N   3   4
2   W   4   0
3   W   2   0
4   S   3   4

df[1].value_counts()  # column wise count of each value
>>>
3    2
4    1
2    1
1    1

df.iloc[2,:].value_counts()  # row wise count for each value
>>>
W    1
0    1
4    1
0 голосов
/ 03 сентября 2018

для подсчета вхождений определенного числа в определенную позицию в каждом элементе списка, который вы можете использовать:

search = 4
position_in_row = 3

occurrences = 0
for el in list:
    if el[position_in_row-1] == search:
        occurrences += 1

print(occurrences)

Я не знаком с черепахой, хотя и предложил бы покопаться в документации или открыть другой вопрос.

Если вас интересует каждый третий элемент каждого подэлемента, попробуйте отсканировать еще раз, я отредактировал его.

...