我想知道如何替换管道方法中从第二行开始的值(连接到其余步骤).

import pandas as pd
import numpy as np

df = pd.DataFrame(
    {
        "Date": ["2020-01-01", "2021-01-01", "2022-01-01"],
        "Pop": [90, 70, 60],
    }
)

         Date  Pop
0  2020-01-01   90
1  2021-01-01   70
2  2022-01-01   60

当前解决方案

df.iloc[1:] = np.nan

预期yields

         Date  Pop
0  2020-01-01   90
1  2021-01-01  NaN
2  2022-01-01  NaN

推荐答案

您也可以像这样使用assign:

df.assign(Pop=df.loc[[0], 'Pop'])

输出:

         Date   Pop
0  2020-01-01  90.0
1  2021-01-01   NaN
2  2022-01-01   NaN

注意:assign适用于nice个列标题,如果标题包含空格或特殊字符,则需要使用不同的方法.

Python相关问答推荐

如何使用LangChain和AzureOpenAI在Python中解决AttribeHelp和BadPressMessage错误?

部分视图的DataFrame

为一个组的每个子组绘制,

如何指定列数据类型

跳过嵌套JSON中的级别并转换为Pandas Rame

Python—压缩叶 map html作为邮箱附件并通过sendgrid发送

人口全部乱序 - Python—Matplotlib—映射

Python避免mypy在相互引用中从另一个类重定义类时失败

基于Scipy插值法的三次样条系数

Pandas—MultiIndex Resample—我不想丢失其他索引的信息´

我对这个简单的异步者的例子有什么错误的理解吗?

来自Airflow Connection的额外参数

Seaborn散点图使用多个不同的标记而不是点

pytest、xdist和共享生成的文件依赖项

如何在python tkinter中绑定键盘上的另一个回车?

对包含JSON列的DataFrame进行分组

根据边界点的属性将图划分为子图

如何强制SqlalChemy指向与连接字符串的默认架构不同的架构

在PySpark中,可以从数组中获取任意数量的元素吗?

用考克斯回归的生存分析系列的真值是模棱两可的.