这一个不平凡的功能大熊猫据帧一列是这一个后续问题:how to select/add a column to pandas dataframe based on a function of other columns?如何选择/添加基于其他列
有一个数据帧,我想选择相匹配的行一些标准。该标准是其他列的值和一些附加值的函数。
这里是一个玩具例子:
>> df = pd.DataFrame({'A': [1,2,3,4,5,6,7,8,9],
'B': [randint(1,9) for x in xrange(9)],
'C': [4,10,3,5,4,5,3,7,1]})
>>
A B C
0 1 6 4
1 2 8 10
2 3 8 3
3 4 4 5
4 5 2 4
5 6 1 5
6 7 1 3
7 8 2 7
8 9 8 1
我想选择其中的一些不平凡函数返回true,例如所有行f(a,c,L),其中L是列表列表,f返回True如果a和c不是同一个子列表的一部分。 也就是说,如果L = [[1,2,3],[4,2,10],[8,7,5,6,9]我想:
A B C
0 1 6 4
3 4 4 5
4 5 2 4
6 7 1 3
8 9 8 1
谢谢!
谢谢!我确实有自己的解决方案(添加列或明确迭代索引),它们确实不那么优雅。我想知道是否有一些很好的解决方案可以采用该功能并优雅地进行操作。 – ScienceFriction
我想你总是可以定义一个函数'f',它接受列'A',列'C'和列'L'的参数,然后'将其应用到你的数据帧中。请参阅 - > http://pandas.pydata.org/pandas-docs/dev/generated/pandas.DataFrame.apply.html –