如何在pandas中把特定的列移到行中与其他列的值相关联
嗨,我正在尝试在熊猫中进行换台操作,但是条件是一列的值应与转置行相关联. 下面给出的示例将解释更好的方法: 数据看起来像: A 1 2 3 4 51 52 53 54 B 11 22 23 24 71 72 73 74 我试图这样做的结果: A 1 51 A 2 52 A 3 53 A 4 54 B 11 71 B 22 72 B 23 73 B 24 74 在第一行中,数据是单行,我想在另一列中使用" a"将数据从1转到4.谁能建议我该怎么做? 解决方案 似乎您需要 print (df) 0 1 2 3 4 0 A 1 2 3 4 1 B 11 22 23 24 df1 = pd.melt(df, id_vars=0).drop('variable', axis=1).sort_values(0) df1.co
0 2024-01-26
编程技术问答社区
使用recusrion进行矩阵转置
您能给我某种伪代码用于使用递归的矩阵换位吗?如果在一个功能中会很棒. ps:这可能不是一个问题,但是我在任何地方都找不到这些信息.如果您知道有关伪递归的伪代码的网站,这将是很棒的. 解决方案 对于平方MXM矩阵: function transpose (x0, y0, x1, y1) if (M > 1) transpose (0, 0, M/2, M/2) // A transpose (0, M/2, M/2, M) // B transpose (M/2, 0, M, M/2) // C transpose (M/2, M/2, M, M) // D swap blocks B and C endif transpose (0, 0, M, M)
2 2024-01-23
编程技术问答社区
在C++中对矩阵进行转置的最快方法是什么?
我有一个我需要转置的矩阵(相对较大).例如,假设我的矩阵是 a b c d e f g h i j k l m n o p q r 我希望结果如下: a g m b h n c I o d j p e k q f l r 最快的方法是什么? 解决方案 这是一个很好的问题.有很多原因您想在内存中实际将矩阵转换,而不仅仅是交换坐标,例如在矩阵乘法和高斯涂抹中. 首先让我列出我用于转台的功能之一(编辑:请参阅答案的结尾,我找到了更快的解决方案) void transpose(float *src, float *dst, const int N, const int M) { #pragma omp parallel for for(int n = 0; n
6 2024-01-22
编程技术问答社区
汇总、整理和将行转为列
我有下表 Id Letter 1001 A 1001 H 1001 H 1001 H 1001 B 1001 H 1001 H 1001 H 1001 H 1001 H 1001 H 1001 A 1001 H 1001 H 1001 H 1001 B 1001 A 1001 H 1001 H 1001 H 1001 B 1001 B 1001 H 1001 H 1001 H 1001 B 1001 H 1001 A 1001 G 1001 H 1001 H 1001 A 1001 B 1002 B 1002 H 1002 H 1002 B 1002 G 10
2 2024-01-19
编程技术问答社区
在GetRows中对行列进行移位
vba代码下方可以完成这项工作,但是我在转置部分中输掉了大约3秒. 有没有一种方法可以在不输掉3秒的情况下获得相同的结果或在SQL查询中或在Getrows过程中? Sub LoadData() Dim strCon, srtQry As String, tmpArray, tmpArray2, R As Variant, i, j As Long Set cn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") strCon = "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ "SERVER=localhost;" & _ "DATABASE=tbname;" & _ "USER=root;" & _ "PAS
0 2024-01-19
编程技术问答社区
如何对列表进行移位?
假设我有一个列表[[1,2,3],[4,5,6]] 我如何转动它们,以便它们是:[[1, 4], [2, 5], [3, 6]]? 我必须使用zip函数吗? zip功能是最简单的方法吗? def m_transpose(m): trans = zip(m) return trans 解决方案 使用>>> list_ = [[1,2,3],[4,5,6]] >>> zip(*list_) [(1, 4), (2, 5), (3, 6)] 请注意,您在内部而不是列表中获取元组.如果需要列表,请使用map(list, zip(*l)). 如果您可以使用numpy而不是列表列表,则使用.T属性更容易: >>> import numpy as np >>> a = np.array([[1,2,3],[4,5,6]]) >>> print(*a) [1 2 3] [4 5 6] >>> print(*a.T) [1 4] [2 5] [3
8 2024-01-19
编程技术问答社区
将TD数组移置为柱状物 jQuery
请帮助我将单元格放在适当的列中与列标题相对应的类.应每列进行迭代,然后循环循环table.temp td阵列,然后用找到的第一个温度TD替换第一个空单元. 最终结果应该看起来与找到的表相似在这里.. var $tempScanner = $('table.temp tr td'); var tempArry = []; $tempScanner.each(function() { tempArry.push($(this)); }); tempArry = tempArry.sort(); td, th { border: 1px solid #111; padding: 6px; } th { font-weight: 700; } span.pull-right { float: right; text-align: right; } .a, .A { background-color:
0 2024-01-13
编程技术问答社区
如何将一个内部表格的行转为列?
我想将内部表行转为列,我想修复第一列,我正在尝试使用以下代码进行此操作,但我没有得到预期的结果....它并没有转换所有排成列 *Types Declaration Types: BEGIN OF ty_t001w, ekorg TYPE t001w-ekorg, werks TYPE t001w-werks, name1 TYPE t001w-name1, END OF ty_t001w. **Field Symbols Declaration FIELD-SYMBOLS: TYPE any, TYPE any. **Internal table and work area declaration DATA: it1_col_row TYPE STANDARD TABLE OF ty_t001w, wa1_col_row TYPE t
0 2024-01-09
编程技术问答社区
如何在Python中使用循环对一个二维列表数组进行转置?
说我有: a = [[1, 1, 1, 6], [0, 2, -1, 3], [4, 0, 10, 42]] 我想将其转换为: a = [[1,0,4], [1,2,0], [1,-1,10], [6,3,42]] 使用Python中的环.我拥有的当前代码是: def transpose(a): s = [] for row in range(len(a)): for col in range(len(a)): s = s + [a[col][row]] return s ,但这给了我: 的输出 [1, 0, 4, 1, 2, 0, 1, -1, 10] 而不是这样: [[1,0,4], [1,2,0], [1,-1,10], [6,3,42]] 有人可以帮我吗?我仍然是新手,不明白为什么它不起作用.非常感谢! 解决方案 使用>>> a = [[1, 1, 1, 6], [0,
2 2024-01-08
编程技术问答社区
在Java中对不同尺寸的2D数组进行移位
嘿,我正在尝试转置用户输入的行/列的2D数组.我在此网站上环顾四周,几乎所有我看到的建议都是Square Arrays(2x2,3x3等...) 这就是我到目前为止的 import java.util.Scanner; public class ArrayTranspose { public static void main(String[] args) { Scanner kb = new Scanner(System.in); System.out.print("Input the number of rows (must be between 2 and 5): "); int rows = kb.nextInt(); if ((rows 5)) { System.out.println("Error: range must be between 2-5"); rows
0 2024-01-08
编程技术问答社区
我应该如何转置一个.NET程序?
通过修改现有代码或仅将现有代码用作参考,将Microsoft .NET程序转换为独立?我的意思是,我的意思是,.NET框架(也不是其他)不必安装在机器上.最好是,即使有点货物,我也更喜欢最少的时间. 解决方案 这取决于.NET在现有代码中的使用程度.某些托管的C ++看起来与本机C ++非常相似 - 在这种情况下,您最好用等效的本机C ++库代替.NET零件.另一方面,某些托管的C ++在整个代码中使用了很多.netism,例如 ^引用,在这种情况下,重新编写可能是按顺序进行的. 其他解决方案 如果您的意思是"没有.NET框架" ...这不是一个好主意,并且不是真正支持的.但是您可以尝试乔恩在此处列出的选项:必须是框架吗?安装以运行我的.NET应用程序? 其他解决方案 我知道您提到没有使用任何框架,但是,为了您的理智,我建议像以前是Borland的VCL一样(我有一段时间没有使用过,所以我不使用它确定现在叫什么).不要使用精心设计的框架,当有可用的选项时...好吧
4 2024-01-07
编程技术问答社区
为什么Ruby有zip和transpose,而它们做的是同一件事?
他们似乎做同样的事情. g = [{ a: "A" }, { b: "B" }] r = [{ x: "X" }, { y: "Y" }] g.zip(r) # => [[{:a=>"A"}, {:x=>"X"}], [{:b=>"B"}, {:y=>"Y"}]] [g,r].transpose # => [[{:a=>"A"}, {:x=>"X"}], [{:b=>"B"}, {:y=>"Y"}]] 为什么使用两种方法? 解决方案 #transpose #transpose 假设自我是数组的数组,并转置行和列. #zip 假设self可以是任何 Enumerable object. 更多的差异在这里 a = [12,11,21] b = [1,2] [a,b].transpose # transpose': element size differs (2 should be 3) (IndexError) a.zip(b) # =>
8 2023-12-26
编程技术问答社区
XSLT将xml转换为csv,将行转为列
我需要使用XSLT来生成XML 的CSV文本输出 我的XML Currecy RUR USD EURO Param 17.2 12.12 100.2345 Param1 100 200 3556 输出格式CSV Cur Param, Param1 RUR, 17.2, 100 USD, 12.12, 200 EURO, 100.2345, 3556 我不知道如何进行"换位" 解决方案 如果您有有效 XML输入,例如:
4 2023-12-24
编程技术问答社区
RapidMiner数据转置等效于R中的R
我有一个RapidMiner过程,该过程从Web API中读取,使用读取XML来处理响应和XPATH以捕获XML中的元素之一.元素可以是任何数字,结果属性是元素/text()的串联字符串. 由于串联的字符串,我必须将字符串分为多个列: ID Col1 Col2 Col3 Col4 Col5 Col6 A 1 5 7 8 B 2 C 4 D 3 9 10 11 12 13 我的最终目标是将其转换为以下格式: ID NewCol A 1 A 5 A 7 A 8 B 2 C 4 D 3 D 9 D 10 D 11 D 12 D 13 两个问题: 1.可以将读取XML运算符配置为将数据读取到多行而不是长串联字符串? 2.如果对1的答案为负,是否有任何操作员可以执行如上所述(类似于R中的熔体功能)? 解决方案 您可以在快速矿工中使用De-Pivo
0 2023-12-24
编程技术问答社区
从xlsx文件中读取水平(基于行的)数据到R数据框中
这是与这个: 是否可以定义/修改阅读函数 可以处理以下事实:存储在xlsx文件中的数据是基于行的(即每行代表变量) 并进行相应的转换,以便可以将其存储在基于列的 data.frame(即xlsx中曾经是 row 的内容列) 捕获基于行变量的基础类/数据类型? 关于csv文件,我可能会从转向readLines开始,但不幸的是xlsx对我来说仍然是黑匣子. 这是一个小的xlsx文件,它具有两个数据取向的示例: 解决方案 从xlsx软件包中稍微修改read.xlsx函数呢? library(xlsx) read.transposed.xlsx
16 2023-12-20
编程技术问答社区
由8x __m256i寄存器代表的矩阵的AVX2转座
我试图弄清楚如何转置(在avx2 intinsics中)一个由__m256i寄存器的8行组成的矩形矩阵,每个矩阵都包含32x 8位(char). __m256i matrix[8]; //32x8bit integers 转置矩阵就像32行8 x 8位整数,但我也可以以相同的方式表示它:8行__m256i,每个行包含4行64位. > . 我知道_mm256_shuffle_epi8适合这种问题,但我不知道如何使用矩形矩阵的特定情况. 解决方案 这个想法是从将32个字符的__m256i行视为8 32位整数. 然后矩阵__m256i matrix[8]可以看作是8x8整数矩阵. 现在,通过转换此8x8整数矩阵来获得该解决方案,其次是 __m256i寄存器中的一些字节置换. 对于8x8整数转置我们 使用 Z Boson的答案的"标准" 8x8浮动转座. 有些从si256到ps,反之亦然,我们可以将其用于8x8 Integer Case. 函数transpos
0 2023-12-15
编程技术问答社区
WorksheetFunction.transpose更改数据类型
i在VBA中使用WorksheetFunction.Transpose将一维混合日期/字符串的1D数组转换为2D数组,以写入工作表. 将我的Windows区域设置设置为DMY,回来的日期是每天/天切换的. 解决方案 在本论坛中提到了Dates被Dates转换为Strings的方法.WorksheetFunction.Transpose方法. 我更深入地研究了. 看来WorksheetFunction.Transpose转换了许多数据类型.换位后的结果将为Boolean,Double或String 在VBA中使用此方法时,需要考虑这一点. 这是一些证明问题的代码: Option Explicit Option Base 1 Sub Tester() Dim v, w, i As Long v = Array(CBool(-1), CBool(0), CByte(9), CDbl(1234), CDec(1234), _
2 2023-12-12
编程技术问答社区
WMI硬盘序列号被移位
我有一些代码可以从WMI获取硬盘驱动器序列号. SelectQuery selectQuery = new SelectQuery("Win32_PhysicalMedia"); ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectQuery); foreach (ManagementObject wmi_PM in searcher.Get()) { string str = wmi_PM["SerialNumber"]; } 起初,我认为它在工作并检索正确的序列号.尝试进行比较尝试使用后,我发现了WMI报告的数字并不完全正确. WMI序列号都用一堆空间以及字符被转移. 实际驱动器序列号打印在贴纸上并由某些工具返回(可能使用deviceiocontrol)为" 3RH8B1BG",但是WMI返回" R38H1BGB". 真实序列号:3RH
12 2023-12-10
编程技术问答社区
使用Vlookup/Macros进行转置
在excel中,我有一个独特的人及其在每行单独的列中保留的各种角色的唯一清单,如下所示: 名称 角色 角色 > John A B C Null Null Jane d c null null null 丽莎a b c f g 我想对每个唯一的"名称"转换所有角色,以便每个名称组合都有一行 - 如下: 名称 角色 约翰·A 约翰B 约翰C 简D 简C 丽莎a 丽莎B 丽莎C 丽莎f 丽莎g 我可以利用任何功能或宏的组合来将此输出获取在另一个纸张或同一电子表格中?即使转置行包含空值,我也可以进入并在末尾删除所有具有空白值的行.我有大约30多个用户,许多用户有20多个我正在尝试分开的角色,因此,如果有一种自动化的方法,这可能会节省我的时间. 解决方案 在H2中: =OFFSET($A$1,CEILING((ROW()-1)/COUNTA($B$1:$F$1),1),0) 在i2中: =VLOOKUP(H2,$A$2:$F
2 2023-11-25
编程技术问答社区