Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/pandas/4.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
在pandas中,使用str.split删除数据时,如何跳过行?_Pandas_Numpy - Fatal编程技术网

在pandas中,使用str.split删除数据时,如何跳过行?

在pandas中,使用str.split删除数据时,如何跳过行?,pandas,numpy,Pandas,Numpy,我有以下数据: Name X Y AA:AA 0 0 AA:BB 1 1 AA:CC 2 2 GG:AB 3 3 GG:AC 4 4 我怎样才能过滤掉“AA”和分号,而跳过带有GG的任何内容? 我用它来过滤冒号,只保留数据的右边,但是对于GG,我需要保持它的原样 data['Name'] = data['Name'].str.split(":").str[1] 使用和使用切片作为: mask = df['Name'].str.contains

我有以下数据:

Name    X   Y
AA:AA   0   0
AA:BB   1   1
AA:CC   2   2
GG:AB   3   3
GG:AC   4   4
我怎样才能过滤掉“AA”和分号,而跳过带有GG的任何内容? 我用它来过滤冒号,只保留数据的右边,但是对于GG,我需要保持它的原样

data['Name'] = data['Name'].str.split(":").str[1]
使用和使用切片作为:

mask = df['Name'].str.contains('GG')
df.loc[~mask,'Name'] = df.loc[~mask,'Name'].str.split(':').str[1]

print(df)
    Name  X  Y
0     AA  0  0
1     BB  1  1
2     CC  2  2
3  GG:AB  3  3
4  GG:AC  4  4