Python Pandas 复制所有行
Python Pandas Duplicate all rows
我想复制数据框中的所有行,以便每一行的副本都位于原始行的正下方。然后我想添加一个带有 numpy.where 函数的新列,这将允许我对原始行和重复行有不同的条件。这样:
Name,Gender,Age
John,M,21
Mary,F,18
Peter,M,20
变成:
Name,Gender,Age,Rename
John,M,21,Jo
John,M,21,hn
Mary,F,18,Ma
Mary,F,18,ry
Peter,F,20,Pe
Peter,F,20,er
我希望这个例子很清楚。做这个的最好方式是什么? (我是 Python 的新手,如有不当之处请见谅)
备选方案:
df = df.assign(Rename=list(
zip(df.Name.str[:2], df.Name.str[-2:]))).explode('Rename')
我想复制数据框中的所有行,以便每一行的副本都位于原始行的正下方。然后我想添加一个带有 numpy.where 函数的新列,这将允许我对原始行和重复行有不同的条件。这样:
Name,Gender,Age
John,M,21
Mary,F,18
Peter,M,20
变成:
Name,Gender,Age,Rename
John,M,21,Jo
John,M,21,hn
Mary,F,18,Ma
Mary,F,18,ry
Peter,F,20,Pe
Peter,F,20,er
我希望这个例子很清楚。做这个的最好方式是什么? (我是 Python 的新手,如有不当之处请见谅)
备选方案:
df = df.assign(Rename=list(
zip(df.Name.str[:2], df.Name.str[-2:]))).explode('Rename')