Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除包含多个元素的列_Python_Pandas - Fatal编程技术网

Python 删除包含多个元素的列

Python 删除包含多个元素的列,python,pandas,Python,Pandas,我有一个文本文件1和 col0 col1 g1 text g2 text,text g3 text,text,text g4 text g5 text,text,text,text,text 需要使用pandas对其进行修改以删除具有多个文本输出的所有行,应该如下所示 col0 col1 g1 text g4 text 唯一不同的是,如果col1包含扁平字符串,则我的文件总共约有300000行: In [94]: df Out[94]: col0

我有一个文本文件1和

col0 col1 
g1   text
g2   text,text
g3   text,text,text
g4   text
g5   text,text,text,text,text
需要使用pandas对其进行修改以删除具有多个文本输出的所有行,应该如下所示

col0 col1 
g1   text
g4   text

唯一不同的是,如果
col1
包含扁平字符串,则我的文件总共约有300000行:

In [94]: df
Out[94]:
  col0                      col1
0   g1                      text
1   g2                 text,text
2   g3            text,text,text
3   g4                      text
4   g5  text,text,text,text,text

In [95]: df = df.loc[~df.col1.str.contains(',')]

In [96]: df
Out[96]:
  col0  col1
0   g1  text
3   g4  text

[105]中的
:df
出[105]:
col0 col1
0 g1[文本]
1 g2[文本,文本]
2 g3[文本,文本,文本]
3 g4[文本]
4 g5[文本,文本,文本,文本,文本]
[106]中的df.col1.str.len()<2
出[106]:
0对
1错误
2错误
3正确
4错误
名称:col1,数据类型:bool
In[107]:df[df.col1.str.len()<2]
出[107]:
col0 col1
0 g1[文本]
3 g4[文本]

此答案基于@MaxU的概念,但这增加了一层泛化,使您能够更改允许的
文本
值的数量

df[df.col1.str.count(',') < 1]

  col0  col1
0   g1  text
3   g4  text

​
df[df.col1.str.count(',')<1]
col0 col1
0 g1文本
3 g4文本
​

这些是字符串还是字符串列表?我猜是字符串列表?请您解释一下第一段代码
df=df.loc[~df.col1.str.contains(',')]
@nearchbioinformesearcher如果您的列包含平面字符串,那么我们知道
文本
值必须用逗号分隔。如果存在一个逗号,则必须有多个
文本
值。MaxU然后过滤数据帧中没有任何逗号的内容,因为只有这些行是只有一个
text
值的行。
df[df.col1.str.count(',') < 1]

  col0  col1
0   g1  text
3   g4  text

​