想要得到下面解释的结果,但没有得到所需的结果. 已try .Update但失败.last_row应放在其列的空白行中.

给出:>

import pandas as pd

d1 = {
        'a': [10],
        'b': [20],
        'c': [30],
        'q': "",
        'w': "",
        'e': ""
        }

df1 = pd.DataFrame(d1)
print(df1)

d2 = {
        'q': [7,40],
        'w': [8,50],
        'e': [9,60]
        }

df2 = pd.DataFrame(d2)
print(df2)

last_row = df2.tail(1)
print(last_row)

预期结果:>

result = {
    'a': [10],
    'b': [20],
    'c': [30],
    'q': [40],
    'w': [50],
    'e': [60]
}

df_result = pd.DataFrame(result)
print(df_result)

推荐答案

df1last_row中需要相同的索引,这里是0:

df1.update(last_row.reset_index(drop=True))
print (df1)
    a   b   c   q   w   e
0  10  20  30  40  50  60

另一个 idea 是创建由last_rowDataFrame.assign填充的新列:

out = df1.assign(**last_row.iloc[0])
print (out)
    a   b   c   q   w   e
0  10  20  30  40  50  60

编辑 :

d1 = { 'a': [10,5,1], 'b': [20,6,2], 'c': [30,7,3], 'q': ["",17,""],
      'w': ["",18,""], 'e': ["",19,""] }

df1 = pd.DataFrame(d1)

d2 = {
        'q': [7,40],
        'w': [8,50],
        'e': [9,60]
        }

df2 = pd.DataFrame(d2)
print(df2)

last_row = df2.tail(1).set_axis([df1.index[-1]])
print(last_row)

df1.update(last_row)
print(df1)
    a   b   c     q     w     e
0  10  20  30                  
1   5   6   7    17    18    19
2   1   2   3  40.0  50.0  60.0

Python相关问答推荐

将每个关键字值对转换为pyspark中的Intramame列

获取2个字节之间的异或

来自ARIMA结果的模型方程

Docker-compose:为不同项目创建相同的容器

如何在vercel中指定Python运行时版本?

KNN分类器中的GridSearchCV

"如果发生特定错误,返回值

基本链合同的地址是如何计算的?

opencv Python稳定的图标识别

Google Drive API获取文件计量数据

使用plotnine和Python构建地块

三个给定的坐标可以是矩形的点吗

滚动和,句号来自Pandas列

将输入管道传输到正在运行的Python脚本中

运行终端命令时出现问题:pip start anonymous"

关于Python异步编程的问题和使用await/await def关键字

如何根据一列的值有条件地 Select 前N个组,然后按两列分组?

使用groupby方法移除公共子字符串

网格基于1.Y轴与2.x轴显示在matplotlib中

如何防止Pandas将索引标为周期?