jjzjj

C# LINQ - 将行拆分为两行

coder 2023-10-18 原文

很抱歉这个可能很愚蠢的问题,但我有这个 Ienumerable<>如此设置

我需要将名称和百分比分成单独的行,并为这些行复制 ProductId 和 RowIndex(我知道这效率不高,但这是需要完成的)。并且可能是一个新字段,用于指定组合行具有哪些数据。

例如,

ProductId, Name , Percent, RowIndex 2301283 , PLACEHOLDER, 12.20 , 1

应该变成这样:

ProductId, DataType, Value , RowIndex 2301283 , Name , PLACEHOLDER, 1 2301283 , Percent , 12.20 , 1 etc etc

此外,如果有意义的话,它们不能嵌套在其他列表或枚举或任何东西中。

这在 LINQ 中可能吗?

最佳答案

据我所知,您希望将每个 GI 对象转换为 2 个新对象,并将所有这些对展平为一个可枚举对象。希望我理解正确。

我认为SelectMany可以胜任这项工作。

yourEnumerable.SelectMany(x => new[] {
    new { ProductId = x.ProductId, DataType = "Name", Value = x.Name, RowIndex = x.RowIndex },
    new { ProductId = x.ProductId, DataType = "Percent", Value = x.Percent, RowIndex = x.RowIndex }
})

关于C# LINQ - 将行拆分为两行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50266496/

有关C# LINQ - 将行拆分为两行的更多相关文章

  1. ruby - 如何以所有可能的方式将字符串拆分为长度最多为 3 的连续子字符串? - 2

    我试图获取一个长度在1到10之间的字符串,并输出将字符串分解为大小为1、2或3的连续子字符串的所有可能方式。例如:输入:123456将整数分割成单个字符,然后继续查找组合。该代码将返回以下所有数组。[1,2,3,4,5,6][12,3,4,5,6][1,23,4,5,6][1,2,34,5,6][1,2,3,45,6][1,2,3,4,56][12,34,5,6][12,3,45,6][12,3,4,56][1,23,45,6][1,2,34,56][1,23,4,56][12,34,56][123,4,5,6][1,234,5,6][1,2,345,6][1,2,3,456][123

  2. ruby - 是否有内置的 Ruby 1.8.7 将数组拆分为相同大小的子数组? - 2

    我已经开始了:defsplit_array(array,size)index=0results=[]ifsize>0whileindex如果我在[1,2,3,4,5,6]上运行它,比如split_array([1,2,3,4,5,6],3)它将产生这个数组:[[1,2,3],[4,5,6]]。在Ruby1.8.7中是否已经有可用的东西可以做到这一点? 最佳答案 [1,2,3,4,5,6].each_slice(3).to_a#=>[[1,2,3],[4,5,6]]对于1.8.6:require'enumerator'[1,2,3,4

  3. ruby - 以随机顺序将数组拆分为多个数组 - Ruby - 2

    我试图在每次运行时以随机顺序将一个名称数组拆分为多个数组。我知道如何拆分它们:name_array=["bob","john","rob","nate","nelly","michael"]array=name_array.each_slice(2).to_a=>[["bob","john"],["rob","nate"],["nelly","michael"]]但是,如果我希望它每次都以随机顺序吐出它们怎么办? 最佳答案 在做同样的事情之前,打乱数组。(Array#shuffle)name_array.shuffle.each_s

  4. python - 将行转换为列 - 2

    我有一个如下所示的行文件,我想将其转换为两列格式。>00000_x1688514TGCTTGGACTACATATGGTTGAGGGTTGTA>00001_x238968TGCTTGGACTACATATTGTTGAGGGTTGTA...期望的输出是>00000_x1688514TGCTTGGACTACATATGGTTGAGGGTTGTA>00001_x238968TGCTTGGACTACATATTGTTGAGGGTTGTA...如果有任何帮助,我将不胜感激。谢谢。 最佳答案 我不知道您是否知道用于读/写和其他遗传功能的BioPerl模

  5. c# - Ruby 等效于 C# Linq 聚合方法 - 2

    什么是Linq聚合方法的ruby​​等价物。它的工作原理是这样的varfactorial=new[]{1,2,3,4,5}.Aggregate((acc,i)=>acc*i);每次将数组序列中的值传递给lambda时,变量acc都会累积。 最佳答案 这在数学以及几乎所有编程语言中通常称为折叠。它是更普遍的变形概念的一个实例。Ruby从Smalltalk中继承了这个特性的名称,它被称为inject:into:(像aCollectioninject:aStartValueinto:aBlock一样使用。)所以,在Ruby中,它称为inj

  6. C# 的 LINQ 用于在 ruby​​ 中等效的集合操作 - 2

    我是ruby​​开发的新手,我目前正在使用rails2.3.11在ruby​​1.8.7中开发一个项目,我想知道这种语言是否有与C#的linq等效的集合操作,例如where子句。谢谢。 最佳答案 Ruby中Linq的where等价于find_all检查documentationfortheEnumerableModule用于其他功能。 关于C#的LINQ用于在ruby​​中等效的集合操作,我们在StackOverflow上找到一个类似的问题: https://

  7. vue 实现内容超出两行显示展开更多功能,可依据需求自定义任意行数! - 2

    平时开发中我们经常会遇到这样的需求,在一个不限高度的盒子中会有很多内容,如果全部显示用户体验会非常不好,所以可以先折叠起来,当内容达到一定高度时,显示展开更多按钮,点击即可显示全部内容,先来看看效果图: 这样做用户体验瞬间得到提升,接下来看看具体细节。0">主要操作在内容这里{{item.username}},……展开更多样式大家可依据自己项目需求进行设计,这里就不贴了,主要说几个关键的。1、在data中定义三个属性isShowMore:false, //控制展开更多的显示与隐藏textHeight:null, //框中内容的高度status:false, //内容状态是否打开2.计算内容是否

  8. ruby - 尝试将字符串拆分为单个单词或 "quoted words",并希望将引号保留在结果数组中 - 2

    我正在尝试将像Presentationabout"TestDrivenDevelopment"这样的字符串拆分成这样的数组:['Presentation','about','"BehaviorDrivenDevelopment"']我已经尝试过CSV::parse_line(string,col_sep:''),但这会导致['Presentation','about','BehaviorDrivenDevelopment']#I'mmissingthequoteshere我也尝试了一些正则表达式魔术,但我还是个初学者,没有成功。我想这对于专业人士来说很简单,所以也许有人可以指出我正确的

  9. ruby - 将数组拆分为一些子数组 - 2

    这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Howtosplit(chunk)aRubyarrayintopartsofXelements?我想将一个数组拆分为一个子数组数组。例如,big_array=(0...6).to_a我们如何将这个大数组切割成数组数组(最大长度为2项),例如:arrays=big_array.split_please(2)哪里...arrays#=>[[0,1],[2,3],[4,5]]注意:我问这个问题,因为为了做到这一点,我目前正在这样编码:arrays=[big_array[0..1],big_array[2..3],b

  10. ruby-on-rails - ruby /将数组拆分为列 - 2

    我本可以使用正确的命名找到答案,但到目前为止还没有弹出任何内容。我会研究将数组拆分为列。意思是,有[0,1,2,3,4,5,6,7,9],我想要4个数组(4列):[[0,4,9],[1,5],[2,6],[3,7]]实际上,我会研究遍历事件记录数组,在4个不同的html列中显示那些(它们是图像记录),同时保持它们从左到右的顺序 最佳答案 Rails解决方案在Rails中,您可以简单地执行以下操作:ary=[0,1,2,3,4,5,6,7,8,9]ary.in_groups_of(4).transpose.map(&:compact)

随机推荐