Удалить число символов «x» из строки в кадре данных панд? - PullRequest
0 голосов
/ 01 октября 2018

У меня есть пандасный фрейм данных df, похожий на этот:

a                 b
thisisastring     5
anotherstring     6
thirdstring       7

Я хочу удалить символы слева от строк в столбце a на основе числа в столбце b.Поэтому я попытался:

df["a"] = d["a"].str[df["b"]:]

Но это приведет к:

a                 b
NaN               5
NaN               6
NaN               7

Вместо:

a                 b
sastring          5
rstring           6
ring              7

Любая помощь?Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 01 октября 2018

Использование zip с фрагментом строки

df.a=[x[y:] for x,y in zip(df.a,df.b)]
df
Out[584]: 
          a  b
0  sastring  5
1   rstring  6
2      ring  7
0 голосов
/ 01 октября 2018

Вы можете сделать это с помощью apply, чтобы применить это построчно:

df.apply(lambda x: x.a[x.b:],axis=1)

0    sastring
1     rstring
2        ring
dtype: object
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...