簡體   English   中英

選擇列中每行的前N個元素

[英]select the first N elements of each row in a column

我正在尋找選擇列a和列b中每一行的前兩個元素。

這是一個例子

df = pd.DataFrame({'a': ['A123', 'A567','A100'], 'b': ['A156', 'A266666','A35555']})

>>> df
      a        b
0  A123     A156
1  A567  A266666
2  A100   A35555

期望的輸出

>>> df
      a      b
0     A1     A1
1     A5     A2
2     A1     A3

我一直在嘗試使用df.loc但沒有成功。

采用

In [905]: df.apply(lambda x: x.str[:2])
Out[905]:
    a   b
0  A1  A1
1  A5  A2
2  A1  A3

要么,

In [908]: df.applymap(lambda x: x[:2])
Out[908]:
    a   b
0  A1  A1
1  A5  A2
2  A1  A3
In [107]: df.apply(lambda c: c.str.slice(stop=2))
Out[107]:
    a   b
0  A1  A1
1  A5  A2
2  A1  A3

暫無
暫無

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

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