我有问题,分裂的内容,一个excel列,其中包含数字和字母成两列,数字在一列和字母在另一列。正如你在第一张照片中看到的,数字和字母之间没有空格,但好的是字母总是“ms”。我需要一个方法来分割它们,就像在第二张照片中一样。之前
之后
我试着用替换器,但没有用,没有把它们分开。有没有别的办法。
3zwjbxry1#
您可以使用extract方法。下面是一个示例:
extract
df = pd.DataFrame({'time': ['34ms', '239ms', '126ms']}) df[['time', 'unit']] = df['time'].str.extract('(\d+)(\D+)') # convert time column into integer df['time'] = df['time'].astype(int) print(df) # output: # time unit # 0 343 ms # 1 239 ms # 2 126 ms
xytpbqjk2#
其实很简单。你需要使用Pandas。系列。字符串。拆分在此处附加语法:-pandas.Series.str.split守则应为
import pandas as pd data_before = {'data' : ['34ms','56ms','2435ms']} df = pd.DataFrame(data_before) result = df['data'].str.split(pat='(\d+)',expand=True) result = result.loc[:,[1,2]] result.rename(columns={1:'number', 2:'string'}, inplace=True)
输出:-
print(result)
Output
2条答案
按热度按时间3zwjbxry1#
您可以使用
extract
方法。下面是一个示例:xytpbqjk2#
其实很简单。
你需要使用Pandas。系列。字符串。拆分
在此处附加语法:-pandas.Series.str.split
守则应为
输出:-
Output