我搜索了一下,但找不到一个好的答案.我想创建一个与另一个数据帧具有相同维度的空数据框,以便添加新列.今天我创建一个用零填充的空数据框,然后删除零列.我希望有更好的方法,但找不到答案.有人能帮我吗?
我今天喜欢这个并且它有效,但它非常难看.
df_copy = pandas.DataFrame(numpy.zeros(len(df_original.index)))
df_copy = df_copy.drop([0],axis=1)
Run Code Online (Sandbox Code Playgroud)
现在我可以在处理数据时添加新列.所以基本上我想要一个与另一个数据帧具有相同尺寸的空数据帧.
df_copy["price"] = pricesList
df_copy["size"] = sizesList
Run Code Online (Sandbox Code Playgroud)
编辑:另一个密切相关的问题:如何创建尺寸为mxn的空数据框?我在下面得到了如何创建一个尺寸为1xn的空数据帧的答案,即通过设置索引.但是如何创建一个用零填充的空nxm数据帧?我问的原因是因为我怀疑(?)创建零填充数据帧更快,然后根据需要替换每个元素.另一种方法是创建一个尺寸为1xn的空数据框,然后根据需要添加列 - 我被告知速度很慢.因此,创建具有nxm维度的空数据帧然后根据需要替换元素(通过将列表复制到每个列)可能会更快.假设一列有100行,我创建了一个包含25行的子列表,所以我只是将这个列表复制到正确的子列,然后重复.这比添加新列快吗?
kad*_*dee 25
使用与另一个数据帧相同的索引和列创建空数据框:
import pandas as pd
df_copy = pd.DataFrame().reindex_like(df_original)
Run Code Online (Sandbox Code Playgroud)
Ben*_*ers 23
对于来到此页面希望创建相同列、相同 dtypes 且没有行的数据框的任何人:
import pandas as pd
df_copy = df_original.iloc[0:0,:].copy()
Run Code Online (Sandbox Code Playgroud)
import pandas as pd
df_copy = pd.DataFrame(index=df_original.index,columns=df_original.columns)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16488 次 |
| 最近记录: |