【发布时间】:2021-01-24 21:49:26
【问题描述】:
我有一个这样的数据框:
将熊猫导入为 pd 将 numpy 导入为 np
Out[10]:
samples subject trial_num
0 [0 2 2 1 1
1 [3 3 0 1 2
2 [1 1 1 1 3
3 [0 1 2 2 1
4 [4 5 6 2 2
5 [0 8 8 2 3
我想要这样的输出:
samples subject trial_num frequency
0 [0 2 2 1 1 2
1 [3 3 0 1 2 2
2 [1 1 1 1 3 1
3 [0 1 2 2 1 3
4 [4 5 6 2 2 3
5 [0 8 8 2 3 2
这里的频率是每个样本中每个列表中唯一值的数量。例如,[0, 2, 2] 只有一个唯一值。
我可以在没有列表的情况下在 pandas 中执行唯一值,或者使用 for 循环来实现它以遍历每一行访问每个列表和....但我想要一种更好的 pandas 方法来做到这一点。
谢谢。
【问题讨论】:
-
为什么
[0, 2, 2]只有一个唯一值而不是两个:[0,2]不一样 -
澄清点:
[0, 2, 2]有 2 个唯一值,0和2。你能澄清一下你的意思吗? -
@It_is_Chris 你是对的,只是纠正它
-
@G.Anderson 我的错我只是纠正它