我有以下几种df:
c1 c2
foo123123 [bar782348, baz23423, foo423423423]
bar738475 [baz234234, foo4234234]
baz2323234 []
我需要将c1
的每个值映射到c2
的列表的每个项目,例如
c1 c2
foo123123 bar782348
foo123123 baz23423
foo123123 foo423423423
bar738475 baz234234
bar738475 foo4234234
我可以使用apply
以一种非常奇怪的方式进行此操作,但是速度和代码的可读性对我来说都不起作用。
result = pd.DataFrame()
def func(row):
global result
df = pd.DataFrame([row['refs']], index=[row['id']]).stack().to_frame()
df = df[[0]].reset_index()
result = result.append(df)
df.apply(func,axis=1)
我确信这可以通过numpy
数组操作来完成,但是我对numpy并没有太多的经验。
谢谢!