Python从数据集中提取数据并放入列表中

时间:2018-09-03 04:23:31

标签: python count extract

我想查找数据集中出现的特定数量,我只关心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 :(得分:1)

要计算列表列表中每个列表的第三个位置上的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,因为它是内置的。

答案 1 :(得分:0)

要计算在列表的每个元素中特定位置出现的特定数字的次数,您可以使用:

search = 4
position_in_row = 3

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

print(occurrences)

尽管我对Turtle不熟悉,但建议您深入研究文档或提出另一个问题。

如果您对每个子元素的每个第三元素都感兴趣,请再次尝试该片段,我对其进行了编辑。

答案 2 :(得分:0)

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