簡體   English   中英

按字符拆分元素

[英]Split elements in a list by character

我有一個最初是數據幀的列表,現在看起來像這樣:

[['asfsd|ksjdsf|jskks','asfsd|ksjdsf|jskks','asfsd|ksjdsf',
'asfsd|ksjdsf|jskks','asfsd|ksjdsf|jskks']]

我不知道如何拆分|之間的每個元素 創建一個包含所有這些列表的新列表。

我做了以下事情:

import pandas as pd
df= pd.read_csv('movie_metadata.csv')
palabras_c= df['plot_keywords']
data_palabras= pd.DataFrame(palabras_c).dropna() 
d=data_palabras.T
d2=d.values.tolist()

l =[]
for i in range(len(d2)):
  x= "".join(d2[i].split("|"))
  l.append(x)
  print l

但我得到一個AttributeError

Traceback (most recent call last)
<ipython-input-186-a57adb3fa668> in <module>()
   l =[]
   for i in range(len(d2)):
   --->  x= "".join(d2[i].split("|"))
         l.append(x)


    AttributeError: 'list' object has no attribute 'split'´

嘗試這個

a = [['asfsd|ksjdsf|jskks','asfsd|ksjdsf|jskks','asfsd|ksjdsf', 'asfsd|ksjdsf|jskks''asfsd|ksjdsf|jskks']][0]
l =[]
for i in range(len(a)):
    x= "".join(a[i].split("|"))
    l.append(x)

print l

輸出:

['asfsdksjdsfjskks', 'asfsdksjdsfjskks', 'asfsdksjdsf', 'asfsdksjdsfjskksasfsdksjdsfjskks']

list.split('|')不起作用嗎? 你有什么嘗試?
此外,單項分隔符中似乎存在小錯誤

l=['asfsd|ksjdsf|jskks','asfsd|ksjdsf|jskks','asfsd|ksjdsf','asfsd|ksjdsf|jskks','asfsd|ksjdsf|jskks']

word_list = []

for w in l:
    for k in w.split('|'):
        word_list.append(k)

print word_list

輸出:

['asfsd', 'ksjdsf', 'jskks', 'asfsd', 'ksjdsf', 'jskks', 'asfsd', 'ksjdsf', 'asfsd', 'ksjdsf', 'jskks', 'asfsd', 'ksjdsf', 'jskks']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM