diabetes
Diabetes
¶
Bases: Dataset
A PyTorch Dataset for regression. A toy data set from scikit-learn. Ten baseline variables, age, sex, body mass index, average blood pressure, and six blood serum measurements were obtained for each of n = 442 diabetes patients, as well as the response of interest, a quantitative measure of disease progression one year after baseline. Number of Instances: 442 Number of Attributes:First 10 columns are numeric predictive values. Target: Column 11 is a quantitative measure of disease progression one year after baseline. Attribute Information: * age age in years * sex * bmi body mass index * bp average blood pressure * s1 tc, total serum cholesterol * s2 ldl, low-density lipoproteins * s3 hdl, high-density lipoproteins * s4 tch, total cholesterol / HDL * s5 ltg, possibly log of serum triglycerides level * s6 glu, blood sugar level
Parameters:
Name | Type | Description | Default |
---|---|---|---|
feature_type |
dtype
|
The data type of the features. Defaults to torch.float. |
float
|
target_type |
dtype
|
The data type of the targets. Defaults to torch.long. |
float
|
train |
bool
|
Whether the dataset is for training or not. Defaults to True. |
True
|
Attributes:
Name | Type | Description |
---|---|---|
data |
Tensor
|
The data features. |
targets |
Tensor
|
The data targets. |
Examples:
>>> from torch.utils.data import DataLoader
from spotpython.data.diabetes import Diabetes
import torch
dataset = Diabetes(feature_type=torch.float32, target_type=torch.float32)
# Set batch size for DataLoader
batch_size = 5
# Create DataLoader
dataloader = DataLoader(dataset, batch_size=batch_size, shuffle=False)
# Iterate over the data in the DataLoader
for batch in dataloader:
inputs, targets = batch
print(f"Batch Size: {inputs.size(0)}")
print("---------------")
print(f"Inputs: {inputs}")
print(f"Targets: {targets}")
Source code in spotpython/data/diabetes.py
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
|
__getitem__(idx)
¶
Returns the feature and target at the given index.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
idx |
int
|
The index. |
required |
Returns:
Name | Type | Description |
---|---|---|
tuple |
tuple
|
A tuple containing the feature and target at the given index. |
Examples:
>>> from spotpython.light.csvdataset import CSVDataset
dataset = CSVDataset(filename='./data/spotpython/data.csv', target_column='prognosis')
print(dataset.data.shape)
print(dataset.targets.shape)
torch.Size([11, 65])
torch.Size([11])
Source code in spotpython/data/diabetes.py
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
|
__len__()
¶
Returns the length of the dataset.
Returns:
Name | Type | Description |
---|---|---|
int |
int
|
The length of the dataset. |
Examples:
>>> from spotpython.light import CSVDataset
>>> dataset = CSVDataset()
>>> print(len(dataset))
60000
Source code in spotpython/data/diabetes.py
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 |
|
extra_repr()
¶
Returns a string representation of the dataset.
Returns:
Name | Type | Description |
---|---|---|
str |
str
|
A string representation of the dataset. |
Examples:
>>> from spotpython.light import CSVDataset
>>> dataset = CSVDataset()
>>> print(dataset)
Split: Train
Source code in spotpython/data/diabetes.py
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
|
get_names()
¶
Returns the names of the features.
Returns:
Name | Type | Description |
---|---|---|
list |
list
|
A list containing the names of the features. |
Examples:
>>> from spotpython.data.diabetes import Diabetes
dataset = Diabetes()
print(dataset.get_names())
["age", "sex", "bmi", "bp", "tc", "ldl", "hdl", "tch", "ltg", "glu"]
Source code in spotpython/data/diabetes.py
139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
|