Skip to main content
 首页 » 编程设计

python之如何访问作为列表的 Pandas 系列元素

2025年05月04日13wayfarer

我有一个 Dataframe 系列,其中包含每行的字符串列表。我想创建另一个系列,它是该行列表中的最后一个字符串。

所以一行可能有一个列表,例如

['a', 'b', 'c', 'd'] 

我想创建另一个 pandas 系列,由行的最后一个元素组成,通常作为 -1 引用访问,在此“d”中。每个观察结果(即行)的列表长度不一。如何做到这一点?

请您参考如下方法:

我认为需要使用 str 进行索引,它适用于所有可迭代对象:

df = pd.DataFrame({'col':[['a', 'b', 'c', 'd'],['a', 'b'],['a'], []]}) 
 
df['last'] = df['col'].str[-1] 
print (df) 
            col last 
0  [a, b, c, d]    d 
1        [a, b]    b 
2           [a]    a 
3            []  NaN 

string 也是可迭代的:

df = pd.DataFrame({'col':['abcd','ab','a', '']}) 
df['last'] = df['col'].str[-1] 
print (df) 
    col last 
0  abcd    d 
1    ab    b 
2     a    a 
3        NaN