我正在尝试使用包含两列的熊猫创建一个空数据框(['originating_number','terminated_number']。创建此新的空数据框后,我的目标是遍历另一个数据框,并添加一个如果满足某些条件,则将此行移到这个新的空数据帧。不幸的是,我遇到了一个麻烦,要么初始化空数据帧,要么将其添加到其中。这是我当前的代码(其中记录代表我正在使用的其他数据帧使用):
verified_frame = pd.DataFrame(columns=['originating_number_2', 'terminating_number_2'])
for index, row in records.iterrows():
originating_number_length = len(str(row['originating_number']))
terminating_number_length = len(str(row['terminating_number']))
if originating_number_length == 10 and terminating_number_length == 10:
temp_df = pd.DataFrame([row['originating_number'],row['terminating_number']])
verified_frame.append(temp_df)
但是,当我在此代码之后(在if块内)设置跟踪时,我可以看到temp_df具有正确的值,但是当我查看verify_frame时,这些值尚未添加。
谢谢您的帮助!
最佳答案
我认为您快到了,您只需要将新的verfied_frame
分配给其附加的self。尝试这个:
verified_frame = pd.DataFrame(columns=['originating_number_2', 'terminating_number_2'])
for index, row in records.iterrows():
originating_number_length = len(str(row['originating_number']))
terminating_number_length = len(str(row['terminating_number']))
if originating_number_length == 10 and terminating_number_length == 10:
temp_df = pd.DataFrame([row['originating_number'],row['terminating_number']])
# reassign verfied_frame here
verified_frame = verified_frame.append(temp_df)
这是支持此https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.append.html的文档
关于python - 创建空数据框并向其中添加行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54778657/