---
title: DiscontiguousColumnSlice
framework: tabulardata
role: symbol
role_heading: Structure
path: tabulardata/discontiguouscolumnslice
---

# DiscontiguousColumnSlice

A collection that represents a selection, potentially with gaps, of elements from a typed column.

## Declaration

```swift
struct DiscontiguousColumnSlice<WrappedElement>
```

## Overview

Overview A column slice contains only certain elements from its parent column. Create a slice by selecting certain elements. For example, use filter(_:) to create a slice that only includes elements with even values. let slice = column.filter({ $0.isMultiple(of: 2) })

## Topics

### Creating a Column Slice

- [init(_:)](tabulardata/discontiguouscolumnslice/init(_:).md)
- [init(column:ranges:)](tabulardata/discontiguouscolumnslice/init(column:ranges:).md)

### Creating a Slice of Unique Elements

- [distinct()](tabulardata/discontiguouscolumnslice/distinct().md)

### Creating a Type-Erased Slice

- [eraseToAnyColumn()](tabulardata/discontiguouscolumnslice/erasetoanycolumn().md)

### Creating a Column of the Same Type

- [prototype](tabulardata/discontiguouscolumnslice/prototype.md)

### Creating Transformed Columns

- [map(_:)](tabulardata/discontiguouscolumnslice/map(_:).md)

### Inspecting a Column Slice

- [name](tabulardata/discontiguouscolumnslice/name.md)
- [count](tabulardata/discontiguouscolumnslice/count.md)
- [wrappedElementType](tabulardata/discontiguouscolumnslice/wrappedelementtype.md)
- [argmin()](tabulardata/discontiguouscolumnslice/argmin().md)
- [argmax()](tabulardata/discontiguouscolumnslice/argmax().md)
- [isNil(at:)](tabulardata/discontiguouscolumnslice/isnil(at:).md)

### Accessing Elements

- [subscript(_:)](tabulardata/discontiguouscolumnslice/subscript(_:)-9y37v.md)
- [subscript(_:)](tabulardata/discontiguouscolumnslice/subscript(_:)-8rd2f.md)
- [subscript(_:)](tabulardata/discontiguouscolumnslice/subscript(_:)-4k2lh.md)
- [subscript(_:)](tabulardata/discontiguouscolumnslice/subscript(_:)-5xvit.md)

### Summarizing a Column Slice

- [summary()](tabulardata/discontiguouscolumnslice/summary().md)
- [numericSummary()](tabulardata/discontiguouscolumnslice/numericsummary()-3r7pn.md)
- [numericSummary()](tabulardata/discontiguouscolumnslice/numericsummary()-4b7m0.md)

### Getting Statistical Values

- [sum()](tabulardata/discontiguouscolumnslice/sum().md)
- [min()](tabulardata/discontiguouscolumnslice/min().md)
- [max()](tabulardata/discontiguouscolumnslice/max().md)
- [mean()](tabulardata/discontiguouscolumnslice/mean()-3y11c.md)
- [mean()](tabulardata/discontiguouscolumnslice/mean()-49u93.md)
- [standardDeviation(deltaDegreesOfFreedom:)](tabulardata/discontiguouscolumnslice/standarddeviation(deltadegreesoffreedom:)-36nx2.md)
- [standardDeviation(deltaDegreesOfFreedom:)](tabulardata/discontiguouscolumnslice/standarddeviation(deltadegreesoffreedom:)-5vd4r.md)

### Describing a Column Slice

- [description](tabulardata/discontiguouscolumnslice/description.md)
- [debugDescription](tabulardata/discontiguouscolumnslice/debugdescription.md)
- [customMirror](tabulardata/discontiguouscolumnslice/custommirror.md)

### Comparing Two Column Slices

- [==(_:_:)](tabulardata/discontiguouscolumnslice/==(_:_:).md)

### Modifying a Column Slice with a Value

- [+=(_:_:)](tabulardata/discontiguouscolumnslice/+=(_:_:)-1mzz0.md)
- [-=(_:_:)](tabulardata/discontiguouscolumnslice/-=(_:_:)-2yrui.md)
- [*=(_:_:)](tabulardata/discontiguouscolumnslice/*=(_:_:)-7gcqc.md)
- [/=(_:_:)](tabulardata/discontiguouscolumnslice/_=(_:_:)-1g0yb.md)
- [/=(_:_:)](tabulardata/discontiguouscolumnslice/_=(_:_:)-6i7hx.md)

### Modifying a Column Slice with a Collection of Values

- [+=(_:_:)](tabulardata/discontiguouscolumnslice/+=(_:_:)-2jxz1.md)
- [+=(_:_:)](tabulardata/discontiguouscolumnslice/+=(_:_:)-lpai.md)
- [-=(_:_:)](tabulardata/discontiguouscolumnslice/-=(_:_:)-9nkq6.md)
- [-=(_:_:)](tabulardata/discontiguouscolumnslice/-=(_:_:)-8a20q.md)
- [*=(_:_:)](tabulardata/discontiguouscolumnslice/*=(_:_:)-9jg9h.md)
- [*=(_:_:)](tabulardata/discontiguouscolumnslice/*=(_:_:)-18nlr.md)
- [/=(_:_:)](tabulardata/discontiguouscolumnslice/_=(_:_:)-6xf9s.md)
- [/=(_:_:)](tabulardata/discontiguouscolumnslice/_=(_:_:)-1mzcg.md)
- [/=(_:_:)](tabulardata/discontiguouscolumnslice/_=(_:_:)-39wsi.md)
- [/=(_:_:)](tabulardata/discontiguouscolumnslice/_=(_:_:)-6lzj.md)

### Hashing a Column Slice

- [hash(into:)](tabulardata/discontiguouscolumnslice/hash(into:).md)

### Supporting Types

- [DiscontiguousColumnSlice.Element](tabulardata/discontiguouscolumnslice/element.md)
- [DiscontiguousColumnSlice.Index](tabulardata/discontiguouscolumnslice/index.md)

### Instance Properties

- [missingCount](tabulardata/discontiguouscolumnslice/missingcount.md)

### Default Implementations

- [BidirectionalCollection Implementations](tabulardata/discontiguouscolumnslice/bidirectionalcollection-implementations.md)
- [Collection Implementations](tabulardata/discontiguouscolumnslice/collection-implementations.md)
- [CustomDebugStringConvertible Implementations](tabulardata/discontiguouscolumnslice/customdebugstringconvertible-implementations.md)
- [CustomReflectable Implementations](tabulardata/discontiguouscolumnslice/customreflectable-implementations.md)
- [CustomStringConvertible Implementations](tabulardata/discontiguouscolumnslice/customstringconvertible-implementations.md)
- [Equatable Implementations](tabulardata/discontiguouscolumnslice/equatable-implementations.md)
- [Hashable Implementations](tabulardata/discontiguouscolumnslice/hashable-implementations.md)

## Relationships

### Conforms To

- [BidirectionalCollection](swift/bidirectionalcollection.md)
- [Collection](swift/collection.md)
- [ColumnProtocol](tabulardata/columnprotocol.md)
- [Copyable](swift/copyable.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomReflectable](swift/customreflectable.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [MutableCollection](swift/mutablecollection.md)
- [OptionalColumnProtocol](tabulardata/optionalcolumnprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [Sequence](swift/sequence.md)

## See Also

### Typed Columns

- [Column](tabulardata/column.md)
- [ColumnSlice](tabulardata/columnslice.md)
- [FilledColumn](tabulardata/filledcolumn.md)
- [ColumnProtocol](tabulardata/columnprotocol.md)
- [OptionalColumnProtocol](tabulardata/optionalcolumnprotocol.md)
