熊猫插入值以订单加一个

发布于 2025-01-24 08:27:45 字数 409 浏览 0 评论 0原文

我想在2012年至2100年中制作一个数据框。我想制作一个数据框架,该数据框架在2012年在参考列Stand_age中提供+1(表示例表),而2012年在2012年的+1在2012年和 + + +1 2099年的2100分之一。代码和框架在下面。

for i in list(range(0, 90, 1)):
    Stand_Age[i+1] = Stand_Age[i] + 1

I want to make a data frame with columns from 2012 to 2100. I would like to make a data frame that gives +1 in 2012 in reference column Stand_Age(example below table), and +1 in 2013 plus +1 in 2012 and +1 in 2100 in 2099 as well. Code and the frame are below.

for i in list(range(0, 90, 1)):
    Stand_Age[i+1] = Stand_Age[i] + 1

pre year plus one by 2100

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

撧情箌佬 2025-01-31 08:27:46

您不应使用stand_age [i+1],而是

df["2012"] = df["Stand_Age"] + 1

对于许多行,它需要

for i in range(1, 90):
    df[str(2011+i)] = df["Stand_Age"] + i

最小的工作代码:

import pandas as pd

df = pd.DataFrame({
    "Stand_Age": [1,1,2,2,3,3,4,4,5,5]
})

print(df)

for i in range(1, 10):
    df[str(2011+i)] = df["Stand_Age"] + i

print(df)

结果:

  Stand_Age
0          1
1          1
2          2
3          2
4          3
5          3
6          4
7          4
8          5
9          5

   Stand_Age  2012  2013  2014  2015  2016  2017  2018  2019  2020
0          1     2     3     4     5     6     7     8     9    10
1          1     2     3     4     5     6     7     8     9    10
2          2     3     4     5     6     7     8     9    10    11
3          2     3     4     5     6     7     8     9    10    11
4          3     4     5     6     7     8     9    10    11    12
5          3     4     5     6     7     8     9    10    11    12
6          4     5     6     7     8     9    10    11    12    13
7          4     5     6     7     8     9    10    11    12    13
8          5     6     7     8     9    10    11    12    13    14
9          5     6     7     8     9    10    11    12    13    14

You shouldn't use Stand_Age[i+1] but rather

df["2012"] = df["Stand_Age"] + 1

And for many rows it would need

for i in range(1, 90):
    df[str(2011+i)] = df["Stand_Age"] + i

Minimal working code:

import pandas as pd

df = pd.DataFrame({
    "Stand_Age": [1,1,2,2,3,3,4,4,5,5]
})

print(df)

for i in range(1, 10):
    df[str(2011+i)] = df["Stand_Age"] + i

print(df)

Result:

  Stand_Age
0          1
1          1
2          2
3          2
4          3
5          3
6          4
7          4
8          5
9          5

   Stand_Age  2012  2013  2014  2015  2016  2017  2018  2019  2020
0          1     2     3     4     5     6     7     8     9    10
1          1     2     3     4     5     6     7     8     9    10
2          2     3     4     5     6     7     8     9    10    11
3          2     3     4     5     6     7     8     9    10    11
4          3     4     5     6     7     8     9    10    11    12
5          3     4     5     6     7     8     9    10    11    12
6          4     5     6     7     8     9    10    11    12    13
7          4     5     6     7     8     9    10    11    12    13
8          5     6     7     8     9    10    11    12    13    14
9          5     6     7     8     9    10    11    12    13    14
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文