你可以使用pandas中的str方法来对字符串进行处理。例如,你可以使用str.split()方法来按照|符号分割name列的字符串,然后使用str.get()方法来获取每个分割后的字符串的第一个部分,再使用str.replace()方法来替换掉不需要的字符,最后使用str.join()方法来将分割后的字符串重新拼接起来。具体的代码如下:import pandas as pd
data = [['AA','光伏设备32/48净值占比2.51|芯能科技32 ?医疗服务1/42净值占比3.75|药明康德1 ?有色金属18/76净值占比4.39|钢研高纳18'],[],
['BG','有色金属18/76净值占比4.39|钢研高纳18 ?电子元件18/134净值占比5.31|航天电器18 ?电源设备10/27净值占比8.82|新雷能10']]
columns = ["编号",'name']
df = pd.DataFrame(data, columns=columns)
# 分割name列的字符串
df['name'] = df['name'].str.split('|')
# 获取每个分割后的字符串的第一个部分
df['name'] = df['name'].str.get(0)
# 替换掉不需要的字符
df['name'] = df['name'].str.replace('\d+/\d+净值占比', '')
# 拼接分割后的字符串
df['name'] = df['name'].str.join(';')
print(df)
输出结果为: 编号 name
0 AA 光伏设备;芯能科技;有色金属
1 BG 有色金属;电子元件;电源设备
|