Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Partners
    • Contact us
Introduction
Deployment Guide
Nuget packages
Configuration
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Nuget packages
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.DataAnalysis.Models
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Providers
    • Extreme.Providers.InteropServices
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.DataAnalysis
    • Accumulator(T, U) Class
    • Aggregator(T, U) Class
    • Aggregator2(T, U) Class
    • Aggregator2Group Class
    • Aggregator2Group(T) Class
    • AggregatorGroup Class
    • AggregatorGroup(T) Class
    • Aggregators Class
    • BoundaryIntervalBehavior Enumeration
    • CategoricalEncoding Class
    • DataFrame Class
    • DataFrame(R, C) Class
    • DataFrameRow(R, C) Class
    • DateTimeExtensions Class
    • DateTimeUnit Enumeration
    • Direction Enumeration
    • Grouping Class
    • Grouping(TKey) Class
    • Histogram Class
    • Histogram(T) Class
    • IAccumulator(T, U) Interface
    • IAccumulator2(T, U) Interface
    • IAccumulator2(T, U, V) Interface
    • IAggregator Interface
    • IAggregator(T) Interface
    • IAggregator2 Interface
    • IAggregator2(T) Interface
    • IDataFrame Interface
    • IGrouping Interface
    • IIndex Interface
    • Index Class
    • Index(T) Class
    • IntervalIndex(T) Class
    • IPivot Interface
    • JoinIndex Class
    • JoinType Enumeration
    • MissingValueAction Enumeration
    • MissingValueException Class
    • MultipleMissingValueAction Enumeration
    • Parameter(T) Class
    • ParameterVector(T) Class
    • Pivot Class
    • Pivot(R, C) Class
    • RankTiebreaker Enumeration
    • Recurrence Class
    • SortOrder Enumeration
    • SpecialBins Enumeration
    • Subset Class
    • TransformedParameter(T) Class
    • TypePreservingAggregatorGroup Class
    • VectorExtensions Class
  • DataFrame Class
    • Properties
    • Methods
  • Methods
    • Append Method Overloads
    • Apply(R, C, T) Method
    • CreateEmpty(R, C) Method
    • FromColumns Method Overloads
    • FromDataTable Method Overloads
    • FromMatrix Method Overloads
    • FromObjects Method Overloads
    • GetRows Method Overloads
    • Join Method Overloads
    • JoinOnNearest(R, C) Method
    • JoinOnSharedColumns(R1, R2, C) Method
    • ReadCsv Method Overloads
    • ReadDelimited Method
    • Resample Method Overloads
    • Stack Method Overloads
    • Unstack Method Overloads
    • WriteCsv(R, C) Method
  • Stack Method Overloads
    • Stack(R, C) Method (DataFrame(R, C), Boolean)
    • Stack(R, C1, C2) Method (DataFrame(R, ValueTuple(C1, C2)), Boolean)
    • Stack(R1, R2, C) Method (DataFrame(ValueTuple(R1, R2), C), Boolean)
    • Stack(R) Method (DataFrame(R, String), IEnumerable(String), IEnumerable(String), String, String)
  • Stack(R) Method (DataFrame(R, String), IEnumerable(String), IEnumerable(String), String, String)

DataFrameStackR Method (DataFrameR, String, IEnumerableString, IEnumerableString, String, String)

Extreme Optimization Numerical Libraries for .NET Professional
Returns a data frame containing all values in the data frame as row-column-value pairs.

Namespace:  Extreme.DataAnalysis
Assembly:  Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.1
Syntax

C#
VB
C++
F#
Copy
public static DataFrame<long, string> Stack<R>(
	this DataFrame<R, string> frame,
	IEnumerable<string> idColumns,
	IEnumerable<string> valueColumns = null,
	string variableKey = "variable",
	string valueKey = "value"
)
<ExtensionAttribute>
Public Shared Function Stack(Of R) ( 
	frame As DataFrame(Of R, String),
	idColumns As IEnumerable(Of String),
	Optional valueColumns As IEnumerable(Of String) = Nothing,
	Optional variableKey As String = "variable",
	Optional valueKey As String = "value"
) As DataFrame(Of Long, String)
public:
[ExtensionAttribute]
generic<typename R>
static DataFrame<long long, String^>^ Stack(
	DataFrame<R, String^>^ frame, 
	IEnumerable<String^>^ idColumns, 
	IEnumerable<String^>^ valueColumns = nullptr, 
	String^ variableKey = L"variable", 
	String^ valueKey = L"value"
)
[<ExtensionAttribute>]
static member Stack : 
        frame : DataFrame<'R, string> * 
        idColumns : IEnumerable<string> * 
        ?valueColumns : IEnumerable<string> * 
        ?variableKey : string * 
        ?valueKey : string 
(* Defaults:
        let _valueColumns = defaultArg valueColumns null
        let _variableKey = defaultArg variableKey "variable"
        let _valueKey = defaultArg valueKey "value"
*)
-> DataFrame<int64, string> 

Parameters

frame
Type: Extreme.DataAnalysisDataFrameR, String
A data frame.
idColumns
Type: System.Collections.GenericIEnumerableString
A sequence of keys of the identifier columns, which remain unstacked.
valueColumns (Optional)
Type: System.Collections.GenericIEnumerableString
A sequence of keys of the value columns, which are stacked.
variableKey (Optional)
Type: SystemString
The key of the value column in the result data frame.
valueKey (Optional)
Type: SystemString
The key of the value column in the result data frame.

Type Parameters

R
The type of the row index of the data frame.

Return Value

Type: DataFrameInt64, String
A data frame with a column corresponding to each key in idColumns, a column for the key of the value columns, and a column for the value of the value columns.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type DataFrameR, String. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).
Remarks

Missing values are not recorded.

See Also

Reference

DataFrame Class
Stack Overload
Extreme.DataAnalysis Namespace

Copyright (c) 2004-2021 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2021, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.