我在访问DataFrame中的列表元素时遇到问题:
import pandas as pd
from pandas import DataFrame
d=DataFrame({'pos': {0: [0.11,0.14,0.46], 1:[1,2,3]},'n': {0: 2.0,1:1}})
Run Code Online (Sandbox Code Playgroud)
列'pos'包含一个列表.我需要在'pos'列中使用列表中第n个元素计算新列.在这种情况下:0.46,2.
我认为这样会像这样:
d[u'new column']=d.pos.apply(lambda x: x[0])
Run Code Online (Sandbox Code Playgroud)
但是x [0]我需要x [dn].
我阅读手册并搜索论坛,但没有找到任何东西.我明显地填补了它,但我坚持了下来.请帮帮我.
谢谢大家!这工作正常:
def func(x):
return x.pos[int(x.n)]
d['new column']=d.apply(lambda row: func(row), axis=1)
Run Code Online (Sandbox Code Playgroud)