我想找一个数据集中出现的特定数量,我只关心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])
另外我有另一个问题,列表完成后我想输入乌龟文本,乌龟文本命令是否接受变量?
要计算列表列表中每个列表的第三个位置的4
s:
>>> 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
,因为它内置了阴影。
计算您可以使用的列表的每个元素中特定位置的特定数字的出现次数:
search = 4
position_in_row = 3
occurrences = 0
for el in list:
if el[position_in_row-1] == search:
occurrences += 1
print(occurrences)
我不熟悉乌龟,并建议深入了解文档或打开另一个问题。
如果您对每个子元素的每个第三个元素感兴趣,请再次尝试剪切,我编辑它。
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