我有一个数据框,
df = pd.DataFrame({"X1": ["A", "B", "A", "B", "B","C","C","C"],
"X2": ['FOO','BAR' ,'FOO1', 'BAR1', 'FOO2','BAR2','FOO3','BAR3']})
X1 X2
0 A FOO
1 B BAR
2 A FOO1
3 B BAR1
4 B FOO2
5 C BAR2
6 C FOO3
7 C BAR3
Run Code Online (Sandbox Code Playgroud)
现在我正在计算给出 A:2、B:3、C:3 的值,我想根据 A 的计数提取行。这样,我可以有一个数据框,其中 2 行 A、2 B行和2行C。
所以输出应该是,
X1 X2
0 A FOO
2 A FOO1
1 B BAR
3 B BAR1
5 C BAR2
6 C FOO3
Run Code Online (Sandbox Code Playgroud) 我有一个元组列表,如下所示。
x = [('b', 'c'),
('c',),
('a', 'c', 'b'),
('b', 'c', 'a', 'd'),
('b', 'c', 'a'),
('a', 'b'),
('a', 'b', 'c', 'd'),
('a', 'c', 'b', 'd'),
('b',),
('c', 'a'),
('a', 'b', 'c'),
('a',)]
Run Code Online (Sandbox Code Playgroud)
我想给出像 ('a') 这样的输入,那么它应该给出像这样的输出,
[('a', 'c', 'b'), ('a', 'b'),('a', 'b', 'c', 'd'),('a', 'c', 'b', 'd'),('a', 'b', 'c')]
#everything starts with a. But not "a".
Run Code Online (Sandbox Code Playgroud)
或者对于 ('a','b') 的输入,它应该给出一个输出
[('a', 'b', 'c', 'd'),('a', 'b', 'c')]
#everything start with ('a','b') but not ('a','b') itself.
Run Code Online (Sandbox Code Playgroud)
我尝试使用但没有成功。
print(filter(lambda x: ("a","b") in x, x)) …Run Code Online (Sandbox Code Playgroud) 我想从列表列表中生成不同的列表。看例子
[['this', "isn't", 'working'], ['working', 'great'], ["isn't", 'working'], ['and'], ['great'], ['working', 'this', "isn't"]]
Run Code Online (Sandbox Code Playgroud)
它应该像
list1 = [['and'], ['great']]
list2 = [['working', 'great'], ["isn't", 'working']]
list3 = [['this', "isn't", 'working'],['working', 'this', "isn't"]]
like wise...list4 having 4 elements and so on.
Run Code Online (Sandbox Code Playgroud)
然后将它们转换为数据帧。但目前,我想根据元素创建列表。如果可以提出一些想法,那将是有帮助的。出于示例目的,示例中显示了一个小列表,这将是一个大列表,因此赞赏一种有效的技术。
谢谢。