在以下数据框中,我要选择除最后一个元素之外的每个元素:
df3=pd.DataFrame({'text':[[[' Macquarie Research '],
[' Susquehanna Financial Group', ' LLLP', ' Research Division ']],[[' Goldman Sachs Group Inc.', ' Research Division '],
[' Citigroup Inc', ' Research Division ']]]})
df3.head()
做我打电话的选择
df3.text=[[a[:-1]for a in i]for i in df3.text]
据我了解,这应该选择除最后一个元素之外的每个元素。我不明白的是,如果列表中只有一个元素(如Macquarie Research),它将返回一个空列表
例如df3.text[0]
的输出为[[], [' Susquehanna Financial Group', ' LLLP']]
如果只有一个元素,我该如何执行此操作,但要保留列表? 我犯了一些明显的错误吗?
答案 0 :(得分:2)
您可以使用
[[a[:-1] if len(a) > 1 else a for a in i] for i in df3.text]