我有一个包含数千行的 DataFrame,我需要将column A1 行中的所有项目向上偏移以获得类似 中的值column B。我可以松开第 0 行中的项目,然后用上一行中的项目填充最后一行。我只是不知道如何剪切和粘贴所有内容 1。
A B
0 0 0
1 0 1
2 1 1
3 1 1
4 1 1
5 1 2
6 2 2
7 2 2
8 2 3
9 3 3
10 3 4
11 4 4
12 4 4
13 4 4
Run Code Online (Sandbox Code Playgroud) 我有一个如下所示的矩阵,我需要创建另外 2 列,其中 COL01-04 列的最小值和该列的名称(不包括 NaN):
In[1]: matrix
Out[1]:
ID COL01 COL02 COL03 COL04
0 0001 NaN 1662 1583 1697.4
1 0002 NaN 1006 1476 1018.44
2 0003 1452 1487 2197.5 1516.27
3 0004 NaN 1554 2298 1585.62
Run Code Online (Sandbox Code Playgroud)
像这样:
ID COL01 COL02 COL03 COL04 Min_val Min_col
0 0001 NaN 1662 1583 1697.4 1583 COL03
1 0002 NaN 1006 1476 1018.44 1006 COL02
2 0003 1452 1487 2197.5 1516.27 1452 COL01
3 0004 NaN 1554 2298 1585.62 1554 COL02
Run Code Online (Sandbox Code Playgroud)
我已经尝试过了
for …Run Code Online (Sandbox Code Playgroud) 我想用VBA做什么-用数组过滤表并删除行。我的数组有4个元素(在一个循环中更改为5个不同的集合)。被过滤的列有5个元素。我只想得到1。这在一个循环中,它将创建5个报告,每个报告根据第29列针对不同的元素进行过滤。
如果在调试模式下,我手动过滤该列,然后跳过该行,则在尝试再次清除所有过滤器时,我在下面有第二行相同的错误5行。
这是788部分中的765和770行。其他所有操作均正常进行。
FilterOutArray-具有4个元素的数组(每个元素为Variant / String)。第29列有5个不同的值,没有空格
我尝试用字符串引用“ Criteria1”,以查看过滤一个元素是否有效,但无效。
'Run-time error: '1004' on row below
ActiveSheet.Range(Cells(1, 1).Cells(29, LastRow)).AutoFilter Field:=29, Criteria1:=FilterOutArray, Operator:=xlFilterValues
Rows("2:2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Delete Shift:=xlUp
'Run-time error: '1004' on row below
ActiveSheet.Range(Cells(1, 1).Cells(29, 9999)).AutoFilter Field:=29
Run Code Online (Sandbox Code Playgroud) 我有DataFrame如下简单的:
df
A B C err col
0 1 10 100 x A
1 2 20 200 y C
2 3 30 300 z D
3 4 40 400 q B
Run Code Online (Sandbox Code Playgroud)
我想创建df['result']具有:
colerr是否存在(第2行像d)无匹配 A B C err col result
0 1 10 100 x A 1
1 2 20 200 y C 200
2 3 30 300 z D z
3 4 40 400 q B 40
Run Code Online (Sandbox Code Playgroud)