Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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_Dataframe_If Statement_Split - Fatal编程技术网

Python 分隔包含一组或两组括号的字符串列

Python 分隔包含一组或两组括号的字符串列,python,pandas,dataframe,if-statement,split,Python,Pandas,Dataframe,If Statement,Split,我有一个类似这样的df: Team, Conf, 20_rec 0 Miami (FL) (ACC), None, 7-6 1 UCF (AAC), None, 6-4 我希望将团队和Conf分开,以实现以下目标: Team, Conf, 20_rec 0 Miami (FL), ACC, 7-6 1 UCF , AAC, 6-4 我知道我可以用:df[['Team','Conf']=df.Team.str.split('(',expand=Tru

我有一个类似这样的df:

     Team, Conf, 20_rec
   0 Miami (FL) (ACC), None, 7-6
   1 UCF (AAC), None, 6-4
我希望将团队和Conf分开,以实现以下目标:

     Team, Conf, 20_rec
   0 Miami (FL), ACC, 7-6
   1 UCF , AAC, 6-4
我知道我可以用:
df[['Team','Conf']=df.Team.str.split('(',expand=True)
我尝试设置条件和if语句来检查一行是否包含给定的值,检查一个给定的团队是否包含在异常列表中,并尝试使用反向拆分来捕获最后的附加值,但似乎没有任何效果

exceptions = ['Miami (FL) (ACC)', 'Miami (OH) (MAC)']
for exception in exceptions:
     if df[~df['Team'].str.contains(exception):
         df[['Team','Conf'] = df.Team.str.split('(', expand = True)
     else:
         df[['Team','Conf'] = df.Team.str.split('\) \(', expand = True)
指向if语句的行,返回:

ValueError: The truth value of a DataFrame is ambiguous. Us a.empty, a.bool(), a.item(),a.any(), or a.all().
我想查看每一行,而不是集合行,也不想在Conf列中返回True/False,但实际上需要一个会议

抱歉没有包含更多的代码示例;我已经偏离了最初的意图,甚至不知道什么是接近的,但我认为这是更接近的尝试之一。谢谢!!

尝试:

df[['Team', 'Conf']] = df.Team.str.strip().str.rsplit(' ', 1, expand=True)

我确实觉得有点傻,但不管怎样,你是我的英雄!谢谢!