[英]Pandas: Create dataframe from dataframe
我有一个 function 迭代 DataFrame 的行,然后用它创建一个新的 DataFrame。 创建的DataFrame的行数是一样的,但是列的个数和名称不一样,所以不能
def _mod_df(df: pd.DataFrame) -> pd.DataFrame:
dff = pd.DataFrame(COL_NAMES)
for _, row in df.iterrows():
col1 = row.colname8 / row.colname3
col2 = row.colname2 ** 2
col3 = row.colname[:8]
dff = dff.concat([dff, Series([col1, col2, col3])], ignore_index=True)
return dff
有没有办法优化这个?
尝试:
def _mod_df(df: pd.DataFrame) -> pd.DataFrame:
return pd.DataFrame([(df.colname8 / df.colname3).values,
(df.colname2 ** 2).values,
df.colname[:8].values],
columns=COL_NAMES)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.