当前位置: 首页 > 知识库问答 >
问题:

for循环的高级使用

丌官招
2023-03-14

我对使用高级for循环和试图使流程清晰感到困惑。

例如,我有这样的主数据帧:

   A  B  C  D  ... year
0  0  1  1  2  ... 1991
1  0  0  0  1  ... 1993
2  1  0  0  0  ... 1994
3  0  1  1  0  ... 1995

我已经有一个包含每个元素的百分比表,如下所示:

  index   value
0   A     0.002
1   B     0.012
2   C     0.035
3   D     0.005
...

我想计算每个键的条件概率,如下所示:

  key1  key2  year  prob
0  A     B    1991  0.135
1  A     C    1993  0.500
2  A     B    1994  0.354
3  A     A    1991  1.000

我对年份栏和元素感到困惑。如何使用for循环从主数据帧的列中提取元素?

我正在考虑另一种方法,但不知道如何开始。我从百分比表中得到key1和key2,然后创建一个年份的范围(range(1983,…),然后从条件概率函数中得到prob。

def condprobability(frame, column1, column2, year):
    for i in range(1991,1992,1993,1994,1995):
        

我被困在这里了。我可以问一些关于它的提示或资源吗?

共有1个答案

逄学潞
2023-03-14

如果您正在使用pandas,请从loc和iloc开始。

 类似资料:
  • libuv提供了非常多的控制event-loop的方法,你能通过使用多loop来实现很多有趣的功能。你还可以将libuv的event loop嵌入到其它基于event-loop的库中。比如,想象着一个基于Qt的UI,然后Qt的event-loop是由libuv驱动的,做着加强级的系统任务。 Stopping an event loop uv_stop()用来终止event loop。loop会停止

  • 我试图在for循环中获得for循环,因此输出如下: 我希望输出显示一个正方形 我不知道它为什么不这样做。下面是我的代码:

  • for循环是一种重复控制结构,允许您有效地编写需要执行特定次数的循环。 语法 (Syntax) Perl编程语言中for循环的语法是 - for ( init; condition; increment ) { statement(s); } 这是for循环中的控制流 - init步骤首先执行,只执行一次。 此步骤允许您声明和初始化任何循环控制变量。 只要出现分号,就不需要在此处输入声明。

  • ' for '循环是最紧凑的循环形式。 它包括以下三个重要部分 - loop initialization ,我们将计数器初始化为起始值。 初始化语句在循环开始之前执行。 test statement将测试给定条件是否为真。 如果条件为真,则执行循环内给出的代码,否则控件将退出循环。 iteration statement ,您可以在其中增加或减少计数器。 您可以将所有三个部分放在一行中以分号分隔

  • 问题 你想通过一个 for 循环来迭代数组、对象或范围。 解决方案 # for(i = 1; i<= 10; i++) x for x in [1..10] # => [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] # To count by 2 # for(i=1; i<= 10; i=i+2) x for x in [1..10] by 2 # => [ 1, 3, 5,

  • for循环是一种重复控制结构,允许您有效地编写需要执行特定次数的循环。 语法 (Syntax) Objective-C编程语言中for循环的语法是 - for( init; condition; increment ) { statement(s); } 这是for循环中的控制流 - init步骤首先执行,只执行一次。 此步骤允许您声明和初始化任何循环控制变量。 只要出现分号,就不需要在此