我正在尝试使用包含两列的熊猫创建一个空数据框(['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/

10-12 21:52
查看更多