Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.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_Split - Fatal编程技术网

Python 按特定字符拆分一列中的值

Python 按特定字符拆分一列中的值,python,pandas,split,Python,Pandas,Split,我有一个包含两列的数据框 在第一列(Motif_name)上,我的值如下所示: Motif_name Score 0 Motif_Name_xx1 0.001 1 Motif_Name_xx2 0.05 2 Motif_Name_xx3 0.02 3 Motif_Name_xx4 0.01 Motif_Name_xx/描述/荷马 第二列只包含一个分数 我试图用“/”分割我的第一列,并保留第一个元素 基本上是我尝试的: df=df['Motif_name'

我有一个包含两列的数据框

在第一列(Motif_name)上,我的值如下所示:

   Motif_name       Score
 0 Motif_Name_xx1  0.001
 1 Motif_Name_xx2  0.05
 2 Motif_Name_xx3  0.02
 3 Motif_Name_xx4  0.01
Motif_Name_xx/描述/荷马

第二列只包含一个分数

我试图用“/”分割我的第一列,并保留第一个元素

基本上是我尝试的:

   df=df['Motif_name'].str.split('/').str[1]
这里的问题是我的数据框被替换了:

   print(df)
   0      Motif_1
   1      Motif_2
我丢失了标题和第二列

我希望有这样一个数据帧:

   Motif_name       Score
 0 Motif_Name_xx1  0.001
 1 Motif_Name_xx2  0.05
 2 Motif_Name_xx3  0.02
 3 Motif_Name_xx4  0.01

似乎需要参数
n=1
用于按第一个
/
拆分,需要参数
str[0]
用于获取列表的第一个值(来自
0
的python计数),然后将其分配给同一列:

df['Motif_name'] = df['Motif_name'].str.split('/', n=1).str[0]

似乎需要参数
n=1
用于按第一个
/
拆分,需要参数
str[0]
用于获取列表的第一个值(来自
0
的python计数),然后将其分配给同一列:

df['Motif_name'] = df['Motif_name'].str.split('/', n=1).str[0]

好的,我只是在编辑问题时看到了解决方案,所以如果其他人需要答案:

 EF1a_R1_df['Motif_name']=EF1a_R1_df['Motif_name'].str.split('/').str[0]

基本上,为了替换所有数据框,只需替换列,它就可以正常工作。

好的,我在编辑问题时看到了解决方案,因此如果其他人需要答案:

 EF1a_R1_df['Motif_name']=EF1a_R1_df['Motif_name'].str.split('/').str[0]

基本上,为了替换所有数据框,只需替换列即可。是的,谢谢,我也找到了解决方案。在我的例子中[1]是一个错误。谢谢,谢谢,我也找到了解决办法。在我的例子中[1]是一个错误。谢谢