我可以发誓这应该返回符合逻辑的三行,但我一生都无法弄清楚为什么只有一行返回。有人可以解释一下吗?
import numpy as np
data = np.array([[1, 2, 3],
[2, 5, 6],
[7, 8, 9],
[4, 3, 4]])
target_sum = 7
x = (((data[:, 0] + data[:, 1])==target_sum) | data[:, 0] ==7)
matching_rows = data[x]
print(matching_rows)
Run Code Online (Sandbox Code Playgroud)
我的终端说:
[[7 8 9]]
Run Code Online (Sandbox Code Playgroud)
但肯定应该说:
[[2 5 6]
[4 3 4]
[7 8 9]]
Run Code Online (Sandbox Code Playgroud)
不?
我有这个代码比较列A和B,如果A更大,则将1加到B列:
Sub test07()
With Sheets("Sheet1")
Dim LastRow As Long, i As Long
LastRow = Cells(Rows.Count, "A").End(xlUp).Row
For i = 12 To LastRow
If Range("A" & i).Value > Range("B" & i).Value Then
Range("B" & i).Value = Range("B" & i).Value + 1
End If
Next i
End With
End Sub
Run Code Online (Sandbox Code Playgroud)
我想再次添加相同的东西,但使用C和D列,但我得到语法错误,即:
Sub test07()
With Sheets("Sheet1")
Dim LastRow As Long, i As Long
LastRow = Cells(Rows.Count, "A").End(xlUp).Row
For i = 12 To LastRow
If Range("A" & i).Value > Range("B" & i).Value Then
Range("B" …Run Code Online (Sandbox Code Playgroud) 我正在撕扯我的头发.我已经尝试了我能想到的每一个变化:
cell = Application.WorksheetFunction.Average((i + 24, j + 2),(i + 70, j + 2))
Run Code Online (Sandbox Code Playgroud)
任何帮助赞赏!