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
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
    • 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.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.Distributed.Cuda
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.FSharp
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.Generic.LinearAlgebra
    • Extreme.Mathematics.Generic.LinearAlgebra.Implementation
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers
    • Extreme.Mathematics.Generic.SignalProcessing
    • Extreme.Mathematics.Implementation
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Complex
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IO
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.LinearAlgebra.Providers
    • Extreme.Mathematics.LinearAlgebra.Sparse
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.Genetic
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Numerics.FSharp
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.IO
    • Extreme.Statistics.Linq
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Random
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Collections
    • Aggregator(T, U) Class
    • Aggregator2(T, U) Class
    • Aggregator2Group Class
    • Aggregator2Group(T) Class
    • AggregatorExtensions Class
    • AggregatorGroup Class
    • AggregatorGroup(T) Class
    • Aggregators Class
    • Array1D(T) Structure
    • Array2D(T) Structure
    • ArraySlice(T) Structure
    • DataFrame Class
    • DataFrame(R, C) Class
    • DataFrameRow(R, C) Class
    • DateTimeUnit Enumeration
    • Direction Enumeration
    • Grouping Class
    • Grouping(TKey) Class
    • IAccumulator(T, U) Interface
    • IAccumulator2(T, U) Interface
    • IAccumulator2(T, U, V) Interface
    • IAggregator Interface
    • IAggregator(T) Interface
    • IAggregator2 Interface
    • IAggregator2(T) Interface
    • ICategoricalVector Interface
    • IDataFrame Interface
    • IGrouping Interface
    • IIndex Interface
    • Index Class
    • Index(T) Class
    • IPivot Interface
    • IVector Interface
    • JoinType Enumeration
    • NativeArray1D(T) Structure
    • NativeArray2D(T) Structure
    • NativeArraySlice(T) Structure
    • Pivot Class
    • Pivot(R, C) Class
    • Recurrence Class
    • SortOrder Enumeration
    • TypedVectorWrapper(K, T) Structure
  • DataFrame Class
    • Properties
    • Methods
  • Methods
    • Apply(R, C, T) Method
    • CreateEmpty(R, C) Method
    • FromColumns Method Overloads
    • FromDataTable Method Overloads
    • FromMatrix(R, C, T) Method
    • FromObjects Method Overloads
    • GetRows Method Overloads
    • ReadCsv Method Overloads
    • Stack Method Overloads
    • Unstack Method Overloads
  • Unstack Method Overloads
    • Unstack(R1, R2, C) Method (DataFrame(Tuple(R1, R2), C))
    • Unstack(R1, R2, R3, C) Method (DataFrame(Tuple(R1, R2, R3), C))
    • Unstack(R, C) Method (IVector)
  • Unstack(R1, R2, R3, C) Method (DataFrame(Tuple(R1, R2, R3), C))
DataFrameUnstackR1, R2, R3, C Method (DataFrameTupleR1, R2, R3, C)Extreme Optimization Numerical Libraries for .NET Professional
Transforms a data frame with a three-level row index into a data frame whose columns correspond to the third level in the index.

Namespace: Extreme.Collections
Assembly: Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 6.0.16073.0 (6.0.17114.0)
Syntax

C#
VB
C++
F#
Copy
public static DataFrame<Tuple<R1, R2>, Tuple<C, R3>> Unstack<R1, R2, R3, C>(
	this DataFrame<Tuple<R1, R2, R3>, C> frame
)
<ExtensionAttribute>
Public Shared Function Unstack(Of R1, R2, R3, C) ( 
	frame As DataFrame(Of Tuple(Of R1, R2, R3), C)
) As DataFrame(Of Tuple(Of R1, R2), Tuple(Of C, R3))
public:
[ExtensionAttribute]
generic<typename R1, typename R2, typename R3, typename C>
static DataFrame<Tuple<R1, R2>^, Tuple<C, R3>^>^ Unstack(
	DataFrame<Tuple<R1, R2, R3>^, C>^ frame
)
[<ExtensionAttribute>]
static member Unstack : 
        frame : DataFrame<Tuple<'R1, 'R2, 'R3>, 'C> -> DataFrame<Tuple<'R1, 'R2>, Tuple<'C, 'R3>> 

Parameters

frame
Type: Extreme.CollectionsDataFrameTupleR1, R2, R3, C
The data frame to transform.

Type Parameters

R1
The element type of the first level of the row index.
R2
The element type of the second level of the row index.
R3
The element type of the third level of the row index.
C
The element type of the column index.

Return Value

Type: DataFrameTupleR1, R2, TupleC, R3
A new data frame whose row index corresponds to the first two levels of the row index of frame, and whose column index is a hierarchical index where the first level corresponds to the columns in frame and the second level corresponds to the third level in the row index of frame.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type DataFrameTupleR1, R2, R3, C. 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).
Version Information

Numerical Libraries

Supported in: 5.x
See Also

Reference

DataFrame Class
Unstack Overload
Extreme.Collections Namespace

Copyright (c) 2004-2017 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2018, 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.