diff --git a/01_constructors.ipynb b/01_constructors.ipynb
index 0ce6028..0f3ea04 100644
--- a/01_constructors.ipynb
+++ b/01_constructors.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**\n",
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**\n",
"\n",
"Let's get started by loading the `DataFrames` package."
]
@@ -65,7 +65,7 @@
}
],
"source": [
- "DataFrame() # empty DataFrame"
+ "DataFrame()"
]
},
{
@@ -83,7 +83,7 @@
{
"data": {
"text/html": [
- "
| A | B | C |
---|
| Int64 | Float64 | String |
---|
3 rows × 3 columns
1 | 1 | 0.211587 | LdB |
---|
2 | 2 | 0.880327 | yXA |
---|
3 | 3 | 0.127785 | LJY |
---|
"
+ " | A | B | C |
---|
| Int64 | Float64 | String |
---|
3 rows × 3 columns
1 | 1 | 0.048942 | 8d0 |
---|
2 | 2 | 0.432517 | BEi |
---|
3 | 3 | 0.348859 | 5F7 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -91,9 +91,9 @@
"\t\\hline\n",
"\t& Int64 & Float64 & String\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 0.211587 & LdB \\\\\n",
- "\t2 & 2 & 0.880327 & yXA \\\\\n",
- "\t3 & 3 & 0.127785 & LJY \\\\\n",
+ "\t1 & 1 & 0.048942 & 8d0 \\\\\n",
+ "\t2 & 2 & 0.432517 & BEi \\\\\n",
+ "\t3 & 3 & 0.348859 & 5F7 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -101,9 +101,9 @@
"│ Row │ A │ B │ C │\n",
"│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mString\u001b[39m │\n",
"├─────┼───────┼──────────┼────────┤\n",
- "│ 1 │ 1 │ 0.211587 │ LdB │\n",
- "│ 2 │ 2 │ 0.880327 │ yXA │\n",
- "│ 3 │ 3 │ 0.127785 │ LJY │"
+ "│ 1 │ 1 │ 0.048942 │ 8d0 │\n",
+ "│ 2 │ 2 │ 0.432517 │ BEi │\n",
+ "│ 3 │ 3 │ 0.348859 │ 5F7 │"
]
},
"execution_count": 3,
@@ -223,7 +223,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 |
---|
| Float64 | Float64 | Float64 |
---|
3 rows × 3 columns
1 | 0.139237 | 0.37297 | 0.79358 |
---|
2 | 0.612363 | 0.0338258 | 0.918752 |
---|
3 | 0.574598 | 0.693267 | 0.301719 |
---|
"
+ " | x1 | x2 | x3 |
---|
| Float64 | Float64 | Float64 |
---|
3 rows × 3 columns
1 | 0.00162273 | 0.0337949 | 0.73149 |
---|
2 | 0.373179 | 0.666266 | 0.935488 |
---|
3 | 0.501172 | 0.89912 | 0.0826475 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -231,19 +231,19 @@
"\t\\hline\n",
"\t& Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.139237 & 0.37297 & 0.79358 \\\\\n",
- "\t2 & 0.612363 & 0.0338258 & 0.918752 \\\\\n",
- "\t3 & 0.574598 & 0.693267 & 0.301719 \\\\\n",
+ "\t1 & 0.00162273 & 0.0337949 & 0.73149 \\\\\n",
+ "\t2 & 0.373179 & 0.666266 & 0.935488 \\\\\n",
+ "\t3 & 0.501172 & 0.89912 & 0.0826475 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×3 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼───────────┼──────────┤\n",
- "│ 1 │ 0.139237 │ 0.37297 │ 0.79358 │\n",
- "│ 2 │ 0.612363 │ 0.0338258 │ 0.918752 │\n",
- "│ 3 │ 0.574598 │ 0.693267 │ 0.301719 │"
+ "│ Row │ x1 │ x2 │ x3 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼────────────┼───────────┼───────────┤\n",
+ "│ 1 │ 0.00162273 │ 0.0337949 │ 0.73149 │\n",
+ "│ 2 │ 0.373179 │ 0.666266 │ 0.935488 │\n",
+ "│ 3 │ 0.501172 │ 0.89912 │ 0.0826475 │"
]
},
"execution_count": 6,
@@ -275,12 +275,13 @@
"ArgumentError: 'Array{Float64,1}' iterates 'Float64' values, which don't satisfy the Tables.jl Row-iterator interface",
"",
"Stacktrace:",
- " [1] invalidtable(::Array{Float64,1}, ::Float64) at C:\\Users\\bogum\\.julia\\packages\\Tables\\P0aUn\\src\\iteratorwrapper.jl:35",
- " [2] iterate at C:\\Users\\bogum\\.julia\\packages\\Tables\\P0aUn\\src\\iteratorwrapper.jl:41 [inlined]",
- " [3] buildcolumns(::Nothing, ::Tables.IteratorWrapper{Array{Float64,1}}) at C:\\Users\\bogum\\.julia\\packages\\Tables\\P0aUn\\src\\fallbacks.jl:123",
- " [4] #DataFrame#364(::Bool, ::Type, ::Array{Float64,1}) at C:\\Users\\bogum\\.julia\\packages\\Tables\\P0aUn\\src\\fallbacks.jl:154",
- " [5] DataFrame(::Array{Float64,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\tables.jl:20",
- " [6] top-level scope at In[7]:1"
+ " [1] invalidtable(::Array{Float64,1}, ::Float64) at C:\\Users\\bogum\\.julia\\packages\\Tables\\JfPP0\\src\\tofromdatavalues.jl:34",
+ " [2] iterate at C:\\Users\\bogum\\.julia\\packages\\Tables\\JfPP0\\src\\tofromdatavalues.jl:40 [inlined]",
+ " [3] buildcolumns at C:\\Users\\bogum\\.julia\\packages\\Tables\\JfPP0\\src\\fallbacks.jl:143 [inlined]",
+ " [4] columns at C:\\Users\\bogum\\.julia\\packages\\Tables\\JfPP0\\src\\fallbacks.jl:174 [inlined]",
+ " [5] #DataFrame#394(::Bool, ::Type, ::Array{Float64,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\other\\tables.jl:34",
+ " [6] DataFrame(::Array{Float64,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\other\\tables.jl:25",
+ " [7] top-level scope at In[7]:1"
]
}
],
@@ -487,7 +488,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 |
---|
| Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 0.883282 | 0.0982655 | 0.438723 | 0.86469 |
---|
2 | 0.82151 | 0.309246 | 0.921206 | 0.742596 |
---|
3 | 0.107196 | 0.995836 | 0.917311 | 0.986401 |
---|
"
+ " | x1 | x2 | x3 | x4 |
---|
| Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 0.845454 | 0.61871 | 0.267289 | 0.303612 |
---|
2 | 0.0294409 | 0.724491 | 0.344001 | 0.29375 |
---|
3 | 0.418848 | 0.298101 | 0.106854 | 0.632238 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -495,19 +496,19 @@
"\t\\hline\n",
"\t& Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.883282 & 0.0982655 & 0.438723 & 0.86469 \\\\\n",
- "\t2 & 0.82151 & 0.309246 & 0.921206 & 0.742596 \\\\\n",
- "\t3 & 0.107196 & 0.995836 & 0.917311 & 0.986401 \\\\\n",
+ "\t1 & 0.845454 & 0.61871 & 0.267289 & 0.303612 \\\\\n",
+ "\t2 & 0.0294409 & 0.724491 & 0.344001 & 0.29375 \\\\\n",
+ "\t3 & 0.418848 & 0.298101 & 0.106854 & 0.632238 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼───────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.883282 │ 0.0982655 │ 0.438723 │ 0.86469 │\n",
- "│ 2 │ 0.82151 │ 0.309246 │ 0.921206 │ 0.742596 │\n",
- "│ 3 │ 0.107196 │ 0.995836 │ 0.917311 │ 0.986401 │"
+ "│ Row │ x1 │ x2 │ x3 │ x4 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────────┼──────────┼──────────┼──────────┤\n",
+ "│ 1 │ 0.845454 │ 0.61871 │ 0.267289 │ 0.303612 │\n",
+ "│ 2 │ 0.0294409 │ 0.724491 │ 0.344001 │ 0.29375 │\n",
+ "│ 3 │ 0.418848 │ 0.298101 │ 0.106854 │ 0.632238 │"
]
},
"execution_count": 12,
@@ -534,7 +535,7 @@
{
"data": {
"text/html": [
- " | a | b | c | d |
---|
| Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 0.169398 | 0.54164 | 0.675899 | 0.41232 |
---|
2 | 0.723424 | 0.906382 | 0.324795 | 0.204721 |
---|
3 | 0.54897 | 0.933663 | 0.546234 | 0.187317 |
---|
"
+ " | a | b | c | d |
---|
| Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 0.18166 | 0.989306 | 0.449316 | 0.0671069 |
---|
2 | 0.95379 | 0.267108 | 0.745801 | 0.500514 |
---|
3 | 0.906509 | 0.290823 | 0.833723 | 0.891714 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -542,19 +543,19 @@
"\t\\hline\n",
"\t& Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.169398 & 0.54164 & 0.675899 & 0.41232 \\\\\n",
- "\t2 & 0.723424 & 0.906382 & 0.324795 & 0.204721 \\\\\n",
- "\t3 & 0.54897 & 0.933663 & 0.546234 & 0.187317 \\\\\n",
+ "\t1 & 0.18166 & 0.989306 & 0.449316 & 0.0671069 \\\\\n",
+ "\t2 & 0.95379 & 0.267108 & 0.745801 & 0.500514 \\\\\n",
+ "\t3 & 0.906509 & 0.290823 & 0.833723 & 0.891714 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ a │ b │ c │ d │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.169398 │ 0.54164 │ 0.675899 │ 0.41232 │\n",
- "│ 2 │ 0.723424 │ 0.906382 │ 0.324795 │ 0.204721 │\n",
- "│ 3 │ 0.54897 │ 0.933663 │ 0.546234 │ 0.187317 │"
+ "│ Row │ a │ b │ c │ d │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼───────────┤\n",
+ "│ 1 │ 0.18166 │ 0.989306 │ 0.449316 │ 0.0671069 │\n",
+ "│ 2 │ 0.95379 │ 0.267108 │ 0.745801 │ 0.500514 │\n",
+ "│ 3 │ 0.906509 │ 0.290823 │ 0.833723 │ 0.891714 │"
]
},
"execution_count": 13,
@@ -583,7 +584,7 @@
{
"data": {
"text/html": [
- " | A | B | C |
---|
| Int64 | Float64 | Any |
---|
1 rows × 3 columns
1 | 97002080 | 4.79264e-316 | missing |
---|
"
+ " | A | B | C |
---|
| Int64 | Float64 | Any |
---|
1 rows × 3 columns
1 | 72289856 | 5.02189e-316 | missing |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -591,7 +592,7 @@
"\t\\hline\n",
"\t& Int64 & Float64 & Any\\\\\n",
"\t\\hline\n",
- "\t1 & 97002080 & 4.79264e-316 & \\\\\n",
+ "\t1 & 72289856 & 5.02189e-316 & \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -599,7 +600,7 @@
"│ Row │ A │ B │ C │\n",
"│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mAny\u001b[39m │\n",
"├─────┼──────────┼──────────────┼─────────┤\n",
- "│ 1 │ 97002080 │ 4.79264e-316 │ \u001b[90mmissing\u001b[39m │"
+ "│ 1 │ 72289856 │ 5.02189e-316 │ \u001b[90mmissing\u001b[39m │"
]
},
"execution_count": 14,
@@ -626,7 +627,7 @@
{
"data": {
"text/html": [
- " | A | B | C |
---|
| Int64 | Float64 | String |
---|
1 rows × 3 columns
1 | 4294967296 | 5.60914e-316 | #undef |
---|
"
+ " | A | B | C |
---|
| Int64 | Float64 | String |
---|
1 rows × 3 columns
1 | 4294967296 | 3.57159e-316 | #undef |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -634,7 +635,7 @@
"\t\\hline\n",
"\t& Int64 & Float64 & String\\\\\n",
"\t\\hline\n",
- "\t1 & 4294967296 & 5.60914e-316 & \\#undef \\\\\n",
+ "\t1 & 4294967296 & 3.57159e-316 & \\#undef \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -642,7 +643,7 @@
"│ Row │ A │ B │ C │\n",
"│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mString\u001b[39m │\n",
"├─────┼────────────┼──────────────┼────────┤\n",
- "│ 1 │ 4294967296 │ 5.60914e-316 │ #undef │"
+ "│ 1 │ 4294967296 │ 3.57159e-316 │ #undef │"
]
},
"execution_count": 15,
@@ -886,7 +887,7 @@
{
"data": {
"text/html": [
- " | a | b |
---|
| Int64 | Char |
---|
2 rows × 2 columns
1 | 21725999824 | '\\x00\\x00\\x00\\x01' |
---|
2 | 129279664 | '\\0' |
---|
"
+ " | a | b |
---|
| Int64 | Char |
---|
2 rows × 2 columns
1 | 116482832 | '\\0' |
---|
2 | 119063744 | '\\0' |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -894,17 +895,17 @@
"\t\\hline\n",
"\t& Int64 & Char\\\\\n",
"\t\\hline\n",
- "\t1 & 21725999824 & '\\textbackslash{}x00\\textbackslash{}x00\\textbackslash{}x00\\textbackslash{}x01' \\\\\n",
- "\t2 & 129279664 & '\\textbackslash{}0' \\\\\n",
+ "\t1 & 116482832 & '\\textbackslash{}0' \\\\\n",
+ "\t2 & 119063744 & '\\textbackslash{}0' \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"2×2 DataFrame\n",
- "│ Row │ a │ b │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
- "├─────┼─────────────┼────────────────────┤\n",
- "│ 1 │ 21725999824 │ '\\x00\\x00\\x00\\x01' │\n",
- "│ 2 │ 129279664 │ '\\0' │"
+ "│ Row │ a │ b │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
+ "├─────┼───────────┼──────┤\n",
+ "│ 1 │ 116482832 │ '\\0' │\n",
+ "│ 2 │ 119063744 │ '\\0' │"
]
},
"execution_count": 23,
@@ -1412,17 +1413,16 @@
"metadata": {},
"outputs": [
{
- "ename": "ErrorException",
- "evalue": "cannot convert a DataFrame containing missing values to Matrix{Int64} (found for column y)",
+ "ename": "ArgumentError",
+ "evalue": "ArgumentError: cannot convert a DataFrame containing missing values to Matrix{Int64} (found for column y)",
"output_type": "error",
"traceback": [
- "cannot convert a DataFrame containing missing values to Matrix{Int64} (found for column y)",
+ "ArgumentError: cannot convert a DataFrame containing missing values to Matrix{Int64} (found for column y)",
"",
"Stacktrace:",
- " [1] error(::String) at .\\error.jl:33",
- " [2] convert(::Type{Array{Int64,2}}, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\abstractdataframe.jl:828",
- " [3] Array{Int64,2}(::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\abstractdataframe.jl:838",
- " [4] top-level scope at In[38]:1"
+ " [1] convert(::Type{Array{Int64,2}}, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\abstractdataframe.jl:818",
+ " [2] Array{Int64,2}(::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\abstractdataframe.jl:829",
+ " [3] top-level scope at In[38]:1"
]
}
],
@@ -1688,14 +1688,14 @@
"ArgumentError: Duplicate variable names: :a. Pass makeunique=true to make them unique using a suffix automatically.",
"",
"Stacktrace:",
- " [1] #make_unique!#1(::Bool, ::Function, ::Array{Symbol,1}, ::Array{Symbol,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\utils.jl:22",
+ " [1] #make_unique!#1(::Bool, ::Function, ::Array{Symbol,1}, ::Array{Symbol,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\other\\utils.jl:22",
" [2] #make_unique! at .\\none:0 [inlined]",
- " [3] #make_unique#2 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\utils.jl:44 [inlined]",
+ " [3] #make_unique#2 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\other\\utils.jl:44 [inlined]",
" [4] #make_unique at .\\none:0 [inlined]",
- " [5] #Index#3 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\index.jl:14 [inlined]",
+ " [5] #Index#3 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\other\\index.jl:14 [inlined]",
" [6] (::getfield(Core, Symbol(\"#kw#Type\")))(::NamedTuple{(:makeunique,),Tuple{Bool}}, ::Type{DataFrames.Index}, ::Array{Symbol,1}) at .\\none:0",
- " [7] #DataFrame#89(::Bool, ::Bool, ::Type, ::Pair{Symbol,Int64}, ::Vararg{Pair{Symbol,Int64},N} where N) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\dataframe\\dataframe.jl:141",
- " [8] DataFrame(::Pair{Symbol,Int64}, ::Vararg{Pair{Symbol,Int64},N} where N) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\dataframe\\dataframe.jl:139",
+ " [7] #DataFrame#96(::Bool, ::Bool, ::Type, ::Pair{Symbol,Int64}, ::Vararg{Pair{Symbol,Int64},N} where N) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\dataframe\\dataframe.jl:143",
+ " [8] DataFrame(::Pair{Symbol,Int64}, ::Vararg{Pair{Symbol,Int64},N} where N) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\dataframe\\dataframe.jl:141",
" [9] top-level scope at In[46]:1"
]
}
@@ -1751,6 +1751,10 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
"display_name": "Julia 1.1.0",
"language": "julia",
diff --git a/02_basicinfo.ipynb b/02_basicinfo.ipynb
index 960ac52..4efbce2 100644
--- a/02_basicinfo.ipynb
+++ b/02_basicinfo.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames # load package"
+ "using DataFrames"
]
},
{
@@ -240,7 +240,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
1,000 rows × 10 columns
1 | 4 | 4 | 2 | 9 | 6 | 1 | 9 | 10 | 6 | 8 |
---|
2 | 4 | 4 | 4 | 3 | 6 | 5 | 9 | 2 | 5 | 8 |
---|
3 | 2 | 5 | 7 | 9 | 5 | 8 | 10 | 4 | 5 | 6 |
---|
4 | 4 | 4 | 3 | 4 | 6 | 10 | 4 | 7 | 5 | 9 |
---|
5 | 6 | 2 | 1 | 3 | 5 | 2 | 6 | 7 | 1 | 7 |
---|
6 | 3 | 5 | 8 | 8 | 4 | 4 | 8 | 4 | 10 | 2 |
---|
7 | 2 | 9 | 8 | 10 | 10 | 4 | 9 | 2 | 4 | 7 |
---|
8 | 4 | 2 | 7 | 2 | 2 | 2 | 5 | 5 | 7 | 4 |
---|
9 | 1 | 10 | 4 | 10 | 9 | 4 | 1 | 3 | 3 | 3 |
---|
10 | 2 | 2 | 10 | 6 | 8 | 1 | 4 | 2 | 1 | 3 |
---|
11 | 5 | 4 | 1 | 2 | 1 | 9 | 2 | 2 | 4 | 10 |
---|
12 | 4 | 4 | 4 | 2 | 3 | 4 | 6 | 4 | 4 | 4 |
---|
13 | 3 | 10 | 5 | 2 | 1 | 3 | 8 | 10 | 4 | 5 |
---|
14 | 2 | 10 | 6 | 6 | 2 | 3 | 5 | 10 | 7 | 2 |
---|
15 | 10 | 5 | 3 | 4 | 1 | 4 | 8 | 9 | 6 | 10 |
---|
16 | 9 | 4 | 8 | 5 | 7 | 5 | 6 | 10 | 10 | 4 |
---|
17 | 3 | 5 | 7 | 1 | 5 | 9 | 7 | 7 | 10 | 7 |
---|
18 | 3 | 3 | 7 | 9 | 1 | 5 | 5 | 5 | 7 | 4 |
---|
19 | 3 | 1 | 1 | 5 | 4 | 3 | 7 | 10 | 1 | 4 |
---|
20 | 8 | 9 | 7 | 5 | 6 | 7 | 10 | 10 | 6 | 4 |
---|
21 | 6 | 1 | 4 | 6 | 6 | 3 | 2 | 5 | 5 | 7 |
---|
22 | 6 | 2 | 6 | 3 | 8 | 8 | 3 | 1 | 10 | 8 |
---|
23 | 4 | 2 | 7 | 8 | 3 | 3 | 6 | 2 | 7 | 7 |
---|
24 | 10 | 10 | 2 | 10 | 9 | 2 | 6 | 4 | 7 | 5 |
---|
25 | 1 | 5 | 7 | 3 | 1 | 4 | 10 | 6 | 9 | 5 |
---|
26 | 4 | 6 | 10 | 3 | 6 | 1 | 7 | 1 | 5 | 6 |
---|
27 | 7 | 3 | 4 | 1 | 3 | 5 | 9 | 9 | 3 | 10 |
---|
28 | 1 | 1 | 2 | 1 | 7 | 6 | 8 | 4 | 4 | 10 |
---|
29 | 1 | 3 | 1 | 7 | 7 | 10 | 1 | 5 | 8 | 5 |
---|
30 | 7 | 1 | 8 | 6 | 5 | 2 | 7 | 3 | 3 | 7 |
---|
⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
1,000 rows × 10 columns
1 | 5 | 8 | 6 | 5 | 5 | 4 | 7 | 1 | 2 | 4 |
---|
2 | 6 | 4 | 10 | 8 | 1 | 1 | 2 | 9 | 2 | 6 |
---|
3 | 3 | 9 | 7 | 6 | 6 | 9 | 9 | 6 | 3 | 6 |
---|
4 | 6 | 5 | 1 | 8 | 7 | 9 | 5 | 10 | 5 | 2 |
---|
5 | 4 | 2 | 7 | 4 | 9 | 7 | 5 | 7 | 7 | 6 |
---|
6 | 7 | 2 | 10 | 5 | 6 | 8 | 5 | 3 | 4 | 5 |
---|
7 | 8 | 9 | 1 | 1 | 6 | 7 | 8 | 2 | 7 | 10 |
---|
8 | 2 | 5 | 7 | 9 | 6 | 5 | 6 | 4 | 3 | 7 |
---|
9 | 7 | 7 | 6 | 10 | 3 | 5 | 1 | 5 | 7 | 10 |
---|
10 | 1 | 2 | 9 | 1 | 6 | 3 | 6 | 5 | 5 | 10 |
---|
11 | 2 | 7 | 5 | 8 | 3 | 10 | 5 | 2 | 4 | 10 |
---|
12 | 9 | 6 | 4 | 6 | 5 | 5 | 5 | 6 | 7 | 2 |
---|
13 | 4 | 1 | 6 | 8 | 6 | 6 | 4 | 3 | 2 | 10 |
---|
14 | 8 | 10 | 2 | 4 | 6 | 3 | 4 | 9 | 7 | 5 |
---|
15 | 2 | 6 | 8 | 10 | 2 | 6 | 10 | 4 | 5 | 10 |
---|
16 | 7 | 7 | 10 | 1 | 6 | 4 | 1 | 9 | 4 | 4 |
---|
17 | 10 | 5 | 10 | 8 | 7 | 4 | 2 | 2 | 5 | 9 |
---|
18 | 6 | 9 | 10 | 4 | 4 | 2 | 10 | 1 | 4 | 4 |
---|
19 | 3 | 3 | 10 | 4 | 3 | 8 | 4 | 5 | 4 | 3 |
---|
20 | 5 | 5 | 9 | 3 | 8 | 3 | 5 | 1 | 4 | 9 |
---|
21 | 10 | 10 | 3 | 8 | 9 | 1 | 5 | 9 | 3 | 3 |
---|
22 | 3 | 9 | 1 | 10 | 2 | 10 | 7 | 9 | 3 | 7 |
---|
23 | 4 | 10 | 9 | 1 | 10 | 5 | 2 | 4 | 8 | 3 |
---|
24 | 1 | 2 | 3 | 10 | 5 | 5 | 10 | 1 | 10 | 4 |
---|
⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccccccccc}\n",
@@ -248,66 +248,54 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 4 & 4 & 2 & 9 & 6 & 1 & 9 & 10 & 6 & 8 \\\\\n",
- "\t2 & 4 & 4 & 4 & 3 & 6 & 5 & 9 & 2 & 5 & 8 \\\\\n",
- "\t3 & 2 & 5 & 7 & 9 & 5 & 8 & 10 & 4 & 5 & 6 \\\\\n",
- "\t4 & 4 & 4 & 3 & 4 & 6 & 10 & 4 & 7 & 5 & 9 \\\\\n",
- "\t5 & 6 & 2 & 1 & 3 & 5 & 2 & 6 & 7 & 1 & 7 \\\\\n",
- "\t6 & 3 & 5 & 8 & 8 & 4 & 4 & 8 & 4 & 10 & 2 \\\\\n",
- "\t7 & 2 & 9 & 8 & 10 & 10 & 4 & 9 & 2 & 4 & 7 \\\\\n",
- "\t8 & 4 & 2 & 7 & 2 & 2 & 2 & 5 & 5 & 7 & 4 \\\\\n",
- "\t9 & 1 & 10 & 4 & 10 & 9 & 4 & 1 & 3 & 3 & 3 \\\\\n",
- "\t10 & 2 & 2 & 10 & 6 & 8 & 1 & 4 & 2 & 1 & 3 \\\\\n",
- "\t11 & 5 & 4 & 1 & 2 & 1 & 9 & 2 & 2 & 4 & 10 \\\\\n",
- "\t12 & 4 & 4 & 4 & 2 & 3 & 4 & 6 & 4 & 4 & 4 \\\\\n",
- "\t13 & 3 & 10 & 5 & 2 & 1 & 3 & 8 & 10 & 4 & 5 \\\\\n",
- "\t14 & 2 & 10 & 6 & 6 & 2 & 3 & 5 & 10 & 7 & 2 \\\\\n",
- "\t15 & 10 & 5 & 3 & 4 & 1 & 4 & 8 & 9 & 6 & 10 \\\\\n",
- "\t16 & 9 & 4 & 8 & 5 & 7 & 5 & 6 & 10 & 10 & 4 \\\\\n",
- "\t17 & 3 & 5 & 7 & 1 & 5 & 9 & 7 & 7 & 10 & 7 \\\\\n",
- "\t18 & 3 & 3 & 7 & 9 & 1 & 5 & 5 & 5 & 7 & 4 \\\\\n",
- "\t19 & 3 & 1 & 1 & 5 & 4 & 3 & 7 & 10 & 1 & 4 \\\\\n",
- "\t20 & 8 & 9 & 7 & 5 & 6 & 7 & 10 & 10 & 6 & 4 \\\\\n",
- "\t21 & 6 & 1 & 4 & 6 & 6 & 3 & 2 & 5 & 5 & 7 \\\\\n",
- "\t22 & 6 & 2 & 6 & 3 & 8 & 8 & 3 & 1 & 10 & 8 \\\\\n",
- "\t23 & 4 & 2 & 7 & 8 & 3 & 3 & 6 & 2 & 7 & 7 \\\\\n",
- "\t24 & 10 & 10 & 2 & 10 & 9 & 2 & 6 & 4 & 7 & 5 \\\\\n",
- "\t25 & 1 & 5 & 7 & 3 & 1 & 4 & 10 & 6 & 9 & 5 \\\\\n",
- "\t26 & 4 & 6 & 10 & 3 & 6 & 1 & 7 & 1 & 5 & 6 \\\\\n",
- "\t27 & 7 & 3 & 4 & 1 & 3 & 5 & 9 & 9 & 3 & 10 \\\\\n",
- "\t28 & 1 & 1 & 2 & 1 & 7 & 6 & 8 & 4 & 4 & 10 \\\\\n",
- "\t29 & 1 & 3 & 1 & 7 & 7 & 10 & 1 & 5 & 8 & 5 \\\\\n",
- "\t30 & 7 & 1 & 8 & 6 & 5 & 2 & 7 & 3 & 3 & 7 \\\\\n",
+ "\t1 & 5 & 8 & 6 & 5 & 5 & 4 & 7 & 1 & 2 & 4 \\\\\n",
+ "\t2 & 6 & 4 & 10 & 8 & 1 & 1 & 2 & 9 & 2 & 6 \\\\\n",
+ "\t3 & 3 & 9 & 7 & 6 & 6 & 9 & 9 & 6 & 3 & 6 \\\\\n",
+ "\t4 & 6 & 5 & 1 & 8 & 7 & 9 & 5 & 10 & 5 & 2 \\\\\n",
+ "\t5 & 4 & 2 & 7 & 4 & 9 & 7 & 5 & 7 & 7 & 6 \\\\\n",
+ "\t6 & 7 & 2 & 10 & 5 & 6 & 8 & 5 & 3 & 4 & 5 \\\\\n",
+ "\t7 & 8 & 9 & 1 & 1 & 6 & 7 & 8 & 2 & 7 & 10 \\\\\n",
+ "\t8 & 2 & 5 & 7 & 9 & 6 & 5 & 6 & 4 & 3 & 7 \\\\\n",
+ "\t9 & 7 & 7 & 6 & 10 & 3 & 5 & 1 & 5 & 7 & 10 \\\\\n",
+ "\t10 & 1 & 2 & 9 & 1 & 6 & 3 & 6 & 5 & 5 & 10 \\\\\n",
+ "\t11 & 2 & 7 & 5 & 8 & 3 & 10 & 5 & 2 & 4 & 10 \\\\\n",
+ "\t12 & 9 & 6 & 4 & 6 & 5 & 5 & 5 & 6 & 7 & 2 \\\\\n",
+ "\t13 & 4 & 1 & 6 & 8 & 6 & 6 & 4 & 3 & 2 & 10 \\\\\n",
+ "\t14 & 8 & 10 & 2 & 4 & 6 & 3 & 4 & 9 & 7 & 5 \\\\\n",
+ "\t15 & 2 & 6 & 8 & 10 & 2 & 6 & 10 & 4 & 5 & 10 \\\\\n",
+ "\t16 & 7 & 7 & 10 & 1 & 6 & 4 & 1 & 9 & 4 & 4 \\\\\n",
+ "\t17 & 10 & 5 & 10 & 8 & 7 & 4 & 2 & 2 & 5 & 9 \\\\\n",
+ "\t18 & 6 & 9 & 10 & 4 & 4 & 2 & 10 & 1 & 4 & 4 \\\\\n",
+ "\t19 & 3 & 3 & 10 & 4 & 3 & 8 & 4 & 5 & 4 & 3 \\\\\n",
+ "\t20 & 5 & 5 & 9 & 3 & 8 & 3 & 5 & 1 & 4 & 9 \\\\\n",
+ "\t21 & 10 & 10 & 3 & 8 & 9 & 1 & 5 & 9 & 3 & 3 \\\\\n",
+ "\t22 & 3 & 9 & 1 & 10 & 2 & 10 & 7 & 9 & 3 & 7 \\\\\n",
+ "\t23 & 4 & 10 & 9 & 1 & 10 & 5 & 2 & 4 & 8 & 3 \\\\\n",
+ "\t24 & 1 & 2 & 3 & 10 & 5 & 5 & 10 & 1 & 10 & 4 \\\\\n",
"\t$\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "1000×10 DataFrame. Omitted printing of 1 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├──────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ 4 │ 4 │ 2 │ 9 │ 6 │ 1 │ 9 │ 10 │ 6 │\n",
- "│ 2 │ 4 │ 4 │ 4 │ 3 │ 6 │ 5 │ 9 │ 2 │ 5 │\n",
- "│ 3 │ 2 │ 5 │ 7 │ 9 │ 5 │ 8 │ 10 │ 4 │ 5 │\n",
- "│ 4 │ 4 │ 4 │ 3 │ 4 │ 6 │ 10 │ 4 │ 7 │ 5 │\n",
- "│ 5 │ 6 │ 2 │ 1 │ 3 │ 5 │ 2 │ 6 │ 7 │ 1 │\n",
- "│ 6 │ 3 │ 5 │ 8 │ 8 │ 4 │ 4 │ 8 │ 4 │ 10 │\n",
- "│ 7 │ 2 │ 9 │ 8 │ 10 │ 10 │ 4 │ 9 │ 2 │ 4 │\n",
- "│ 8 │ 4 │ 2 │ 7 │ 2 │ 2 │ 2 │ 5 │ 5 │ 7 │\n",
- "│ 9 │ 1 │ 10 │ 4 │ 10 │ 9 │ 4 │ 1 │ 3 │ 3 │\n",
- "│ 10 │ 2 │ 2 │ 10 │ 6 │ 8 │ 1 │ 4 │ 2 │ 1 │\n",
+ "1000×10 DataFrame\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
+ "├──────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
+ "│ 1 │ 5 │ 8 │ 6 │ 5 │ 5 │ 4 │ 7 │ 1 │ 2 │ 4 │\n",
+ "│ 2 │ 6 │ 4 │ 10 │ 8 │ 1 │ 1 │ 2 │ 9 │ 2 │ 6 │\n",
+ "│ 3 │ 3 │ 9 │ 7 │ 6 │ 6 │ 9 │ 9 │ 6 │ 3 │ 6 │\n",
+ "│ 4 │ 6 │ 5 │ 1 │ 8 │ 7 │ 9 │ 5 │ 10 │ 5 │ 2 │\n",
+ "│ 5 │ 4 │ 2 │ 7 │ 4 │ 9 │ 7 │ 5 │ 7 │ 7 │ 6 │\n",
+ "│ 6 │ 7 │ 2 │ 10 │ 5 │ 6 │ 8 │ 5 │ 3 │ 4 │ 5 │\n",
+ "│ 7 │ 8 │ 9 │ 1 │ 1 │ 6 │ 7 │ 8 │ 2 │ 7 │ 10 │\n",
"⋮\n",
- "│ 990 │ 3 │ 2 │ 1 │ 8 │ 3 │ 2 │ 10 │ 6 │ 6 │\n",
- "│ 991 │ 2 │ 6 │ 1 │ 9 │ 8 │ 5 │ 5 │ 9 │ 2 │\n",
- "│ 992 │ 8 │ 5 │ 10 │ 10 │ 9 │ 9 │ 8 │ 10 │ 8 │\n",
- "│ 993 │ 5 │ 1 │ 6 │ 8 │ 4 │ 1 │ 7 │ 4 │ 3 │\n",
- "│ 994 │ 5 │ 7 │ 9 │ 7 │ 2 │ 5 │ 1 │ 7 │ 10 │\n",
- "│ 995 │ 2 │ 10 │ 6 │ 4 │ 3 │ 7 │ 3 │ 3 │ 7 │\n",
- "│ 996 │ 10 │ 5 │ 9 │ 5 │ 10 │ 8 │ 5 │ 3 │ 9 │\n",
- "│ 997 │ 9 │ 4 │ 10 │ 10 │ 10 │ 5 │ 8 │ 4 │ 9 │\n",
- "│ 998 │ 6 │ 3 │ 1 │ 3 │ 4 │ 6 │ 8 │ 2 │ 2 │\n",
- "│ 999 │ 3 │ 1 │ 10 │ 2 │ 8 │ 2 │ 1 │ 2 │ 6 │\n",
- "│ 1000 │ 10 │ 7 │ 9 │ 5 │ 1 │ 5 │ 6 │ 4 │ 4 │"
+ "│ 993 │ 5 │ 7 │ 7 │ 1 │ 6 │ 4 │ 2 │ 5 │ 2 │ 10 │\n",
+ "│ 994 │ 9 │ 2 │ 5 │ 4 │ 6 │ 7 │ 9 │ 7 │ 6 │ 2 │\n",
+ "│ 995 │ 2 │ 3 │ 8 │ 8 │ 3 │ 3 │ 1 │ 2 │ 9 │ 8 │\n",
+ "│ 996 │ 3 │ 7 │ 9 │ 4 │ 10 │ 10 │ 1 │ 3 │ 9 │ 2 │\n",
+ "│ 997 │ 7 │ 6 │ 8 │ 4 │ 2 │ 6 │ 4 │ 4 │ 3 │ 8 │\n",
+ "│ 998 │ 6 │ 1 │ 7 │ 9 │ 7 │ 2 │ 6 │ 4 │ 6 │ 2 │\n",
+ "│ 999 │ 1 │ 10 │ 10 │ 1 │ 2 │ 10 │ 4 │ 8 │ 10 │ 4 │\n",
+ "│ 1000 │ 5 │ 3 │ 10 │ 2 │ 10 │ 2 │ 10 │ 3 │ 7 │ 5 │"
]
},
"execution_count": 8,
@@ -334,7 +322,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
5 rows × 10 columns
1 | 4 | 4 | 2 | 9 | 6 | 1 | 9 | 10 | 6 | 8 |
---|
2 | 4 | 4 | 4 | 3 | 6 | 5 | 9 | 2 | 5 | 8 |
---|
3 | 2 | 5 | 7 | 9 | 5 | 8 | 10 | 4 | 5 | 6 |
---|
4 | 4 | 4 | 3 | 4 | 6 | 10 | 4 | 7 | 5 | 9 |
---|
5 | 6 | 2 | 1 | 3 | 5 | 2 | 6 | 7 | 1 | 7 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
5 rows × 10 columns
1 | 5 | 8 | 6 | 5 | 5 | 4 | 7 | 1 | 2 | 4 |
---|
2 | 6 | 4 | 10 | 8 | 1 | 1 | 2 | 9 | 2 | 6 |
---|
3 | 3 | 9 | 7 | 6 | 6 | 9 | 9 | 6 | 3 | 6 |
---|
4 | 6 | 5 | 1 | 8 | 7 | 9 | 5 | 10 | 5 | 2 |
---|
5 | 4 | 2 | 7 | 4 | 9 | 7 | 5 | 7 | 7 | 6 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccccccccc}\n",
@@ -342,23 +330,23 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 4 & 4 & 2 & 9 & 6 & 1 & 9 & 10 & 6 & 8 \\\\\n",
- "\t2 & 4 & 4 & 4 & 3 & 6 & 5 & 9 & 2 & 5 & 8 \\\\\n",
- "\t3 & 2 & 5 & 7 & 9 & 5 & 8 & 10 & 4 & 5 & 6 \\\\\n",
- "\t4 & 4 & 4 & 3 & 4 & 6 & 10 & 4 & 7 & 5 & 9 \\\\\n",
- "\t5 & 6 & 2 & 1 & 3 & 5 & 2 & 6 & 7 & 1 & 7 \\\\\n",
+ "\t1 & 5 & 8 & 6 & 5 & 5 & 4 & 7 & 1 & 2 & 4 \\\\\n",
+ "\t2 & 6 & 4 & 10 & 8 & 1 & 1 & 2 & 9 & 2 & 6 \\\\\n",
+ "\t3 & 3 & 9 & 7 & 6 & 6 & 9 & 9 & 6 & 3 & 6 \\\\\n",
+ "\t4 & 6 & 5 & 1 & 8 & 7 & 9 & 5 & 10 & 5 & 2 \\\\\n",
+ "\t5 & 4 & 2 & 7 & 4 & 9 & 7 & 5 & 7 & 7 & 6 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "5×10 DataFrame. Omitted printing of 1 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├─────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ 4 │ 4 │ 2 │ 9 │ 6 │ 1 │ 9 │ 10 │ 6 │\n",
- "│ 2 │ 4 │ 4 │ 4 │ 3 │ 6 │ 5 │ 9 │ 2 │ 5 │\n",
- "│ 3 │ 2 │ 5 │ 7 │ 9 │ 5 │ 8 │ 10 │ 4 │ 5 │\n",
- "│ 4 │ 4 │ 4 │ 3 │ 4 │ 6 │ 10 │ 4 │ 7 │ 5 │\n",
- "│ 5 │ 6 │ 2 │ 1 │ 3 │ 5 │ 2 │ 6 │ 7 │ 1 │"
+ "5×10 DataFrame\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
+ "│ 1 │ 5 │ 8 │ 6 │ 5 │ 5 │ 4 │ 7 │ 1 │ 2 │ 4 │\n",
+ "│ 2 │ 6 │ 4 │ 10 │ 8 │ 1 │ 1 │ 2 │ 9 │ 2 │ 6 │\n",
+ "│ 3 │ 3 │ 9 │ 7 │ 6 │ 6 │ 9 │ 9 │ 6 │ 3 │ 6 │\n",
+ "│ 4 │ 6 │ 5 │ 1 │ 8 │ 7 │ 9 │ 5 │ 10 │ 5 │ 2 │\n",
+ "│ 5 │ 4 │ 2 │ 7 │ 4 │ 9 │ 7 │ 5 │ 7 │ 7 │ 6 │"
]
},
"execution_count": 9,
@@ -385,7 +373,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
3 rows × 10 columns
1 | 6 | 3 | 1 | 3 | 4 | 6 | 8 | 2 | 2 | 4 |
---|
2 | 3 | 1 | 10 | 2 | 8 | 2 | 1 | 2 | 6 | 9 |
---|
3 | 10 | 7 | 9 | 5 | 1 | 5 | 6 | 4 | 4 | 9 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
3 rows × 10 columns
1 | 6 | 1 | 7 | 9 | 7 | 2 | 6 | 4 | 6 | 2 |
---|
2 | 1 | 10 | 10 | 1 | 2 | 10 | 4 | 8 | 10 | 4 |
---|
3 | 5 | 3 | 10 | 2 | 10 | 2 | 10 | 3 | 7 | 5 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccccccccc}\n",
@@ -393,19 +381,19 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 6 & 3 & 1 & 3 & 4 & 6 & 8 & 2 & 2 & 4 \\\\\n",
- "\t2 & 3 & 1 & 10 & 2 & 8 & 2 & 1 & 2 & 6 & 9 \\\\\n",
- "\t3 & 10 & 7 & 9 & 5 & 1 & 5 & 6 & 4 & 4 & 9 \\\\\n",
+ "\t1 & 6 & 1 & 7 & 9 & 7 & 2 & 6 & 4 & 6 & 2 \\\\\n",
+ "\t2 & 1 & 10 & 10 & 1 & 2 & 10 & 4 & 8 & 10 & 4 \\\\\n",
+ "\t3 & 5 & 3 & 10 & 2 & 10 & 2 & 10 & 3 & 7 & 5 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "3×10 DataFrame. Omitted printing of 1 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├─────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ 6 │ 3 │ 1 │ 3 │ 4 │ 6 │ 8 │ 2 │ 2 │\n",
- "│ 2 │ 3 │ 1 │ 10 │ 2 │ 8 │ 2 │ 1 │ 2 │ 6 │\n",
- "│ 3 │ 10 │ 7 │ 9 │ 5 │ 1 │ 5 │ 6 │ 4 │ 4 │"
+ "3×10 DataFrame\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
+ "│ 1 │ 6 │ 1 │ 7 │ 9 │ 7 │ 2 │ 6 │ 4 │ 6 │ 2 │\n",
+ "│ 2 │ 1 │ 10 │ 10 │ 1 │ 2 │ 10 │ 4 │ 8 │ 10 │ 4 │\n",
+ "│ 3 │ 5 │ 3 │ 10 │ 2 │ 10 │ 2 │ 10 │ 3 │ 7 │ 5 │"
]
},
"execution_count": 10,
@@ -432,7 +420,7 @@
{
"data": {
"text/html": [
- "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
1 rows × 10 columns
1 | 4 | 4 | 2 | 9 | 6 | 1 | 9 | 10 | 6 | 8 |
---|
"
+ "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
1 rows × 10 columns
1 | 5 | 8 | 6 | 5 | 5 | 4 | 7 | 1 | 2 | 4 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccccccccc}\n",
@@ -440,15 +428,15 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 4 & 4 & 2 & 9 & 6 & 1 & 9 & 10 & 6 & 8 \\\\\n",
+ "\t1 & 5 & 8 & 6 & 5 & 5 & 4 & 7 & 1 & 2 & 4 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "DataFrameRow. Omitted printing of 1 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├─────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ 4 │ 4 │ 2 │ 9 │ 6 │ 1 │ 9 │ 10 │ 6 │"
+ "DataFrameRow\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
+ "│ 1 │ 5 │ 8 │ 6 │ 5 │ 5 │ 4 │ 7 │ 1 │ 2 │ 4 │"
]
},
"execution_count": 11,
@@ -468,7 +456,7 @@
{
"data": {
"text/html": [
- "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
1 rows × 10 columns
1000 | 10 | 7 | 9 | 5 | 1 | 5 | 6 | 4 | 4 | 9 |
---|
"
+ "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 |
---|
| Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 | Int64 |
---|
1 rows × 10 columns
1000 | 5 | 3 | 10 | 2 | 10 | 2 | 10 | 3 | 7 | 5 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccccccccc}\n",
@@ -476,15 +464,15 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64 & Int64\\\\\n",
"\t\\hline\n",
- "\t1000 & 10 & 7 & 9 & 5 & 1 & 5 & 6 & 4 & 4 & 9 \\\\\n",
+ "\t1000 & 5 & 3 & 10 & 2 & 10 & 2 & 10 & 3 & 7 & 5 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "DataFrameRow. Omitted printing of 1 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├──────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
- "│ 1000 │ 10 │ 7 │ 9 │ 5 │ 1 │ 5 │ 6 │ 4 │ 4 │"
+ "DataFrameRow\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
+ "├──────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤\n",
+ "│ 1000 │ 5 │ 3 │ 10 │ 2 │ 10 │ 2 │ 10 │ 3 │ 7 │ 5 │"
]
},
"execution_count": 12,
@@ -502,9 +490,7 @@
"source": [
"### Most elementary get and set operations\n",
"\n",
- "Given the `DataFrame`, `x`, here are four ways to grab one of its columns as a `Vector`.\n",
- "\n",
- "*Note that since Julia 1.0 you can access column name using `.` operator.*"
+ "Given the `DataFrame`, `x`, here are four ways to grab one of its columns as a `Vector`."
]
},
{
@@ -562,7 +548,7 @@
}
],
"source": [
- "x[1], x[:A], x.A # all get the vector stored in our DataFrame without copying it"
+ "x.A, x[!, 1], x[!, :A] # all get the vector stored in our DataFrame without copying it"
]
},
{
@@ -762,13 +748,132 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "Assignment can be done in ranges to a scalar,"
+ "You can also use `Regex` to select columns and `Not` from InvertedIndices.jl both to select rows and columns"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ " | A |
---|
| Int64 |
---|
1 rows × 1 columns
1 | 2 |
---|
"
+ ],
+ "text/latex": [
+ "\\begin{tabular}{r|c}\n",
+ "\t& A\\\\\n",
+ "\t\\hline\n",
+ "\t& Int64\\\\\n",
+ "\t\\hline\n",
+ "\t1 & 2 \\\\\n",
+ "\\end{tabular}\n"
+ ],
+ "text/plain": [
+ "1×1 DataFrame\n",
+ "│ Row │ A │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │\n",
+ "├─────┼───────┤\n",
+ "│ 1 │ 2 │"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "x[Not(1), r\"A\"]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ " | B | C |
---|
| Float64⍰ | String |
---|
2 rows × 2 columns
1 | 1.0 | a |
---|
2 | missing | b |
---|
"
+ ],
+ "text/latex": [
+ "\\begin{tabular}{r|cc}\n",
+ "\t& B & C\\\\\n",
+ "\t\\hline\n",
+ "\t& Float64⍰ & String\\\\\n",
+ "\t\\hline\n",
+ "\t1 & 1.0 & a \\\\\n",
+ "\t2 & & b \\\\\n",
+ "\\end{tabular}\n"
+ ],
+ "text/plain": [
+ "2×2 DataFrame\n",
+ "│ Row │ B │ C │\n",
+ "│ │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mString\u001b[39m │\n",
+ "├─────┼──────────┼────────┤\n",
+ "│ 1 │ 1.0 │ a │\n",
+ "│ 2 │ \u001b[90mmissing\u001b[39m │ b │"
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "x[!, Not(1)] # ! indicates that underlying columns are not copied"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ " | B | C |
---|
| Float64⍰ | String |
---|
2 rows × 2 columns
1 | 1.0 | a |
---|
2 | missing | b |
---|
"
+ ],
+ "text/latex": [
+ "\\begin{tabular}{r|cc}\n",
+ "\t& B & C\\\\\n",
+ "\t\\hline\n",
+ "\t& Float64⍰ & String\\\\\n",
+ "\t\\hline\n",
+ "\t1 & 1.0 & a \\\\\n",
+ "\t2 & & b \\\\\n",
+ "\\end{tabular}\n"
+ ],
+ "text/plain": [
+ "2×2 DataFrame\n",
+ "│ Row │ B │ C │\n",
+ "│ │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mString\u001b[39m │\n",
+ "├─────┼──────────┼────────┤\n",
+ "│ 1 │ 1.0 │ a │\n",
+ "│ 2 │ \u001b[90mmissing\u001b[39m │ b │"
+ ]
+ },
+ "execution_count": 23,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "x[:, Not(1)] # : means that the columns will get copied"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Assignment can be done in ranges to a scalar using broadcasting:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "metadata": {},
"outputs": [
{
"data": {
@@ -794,13 +899,13 @@
"│ 2 │ 1 │ 1.0 │ b │"
]
},
- "execution_count": 21,
+ "execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "x[1:2, 1:2] = 1\n",
+ "x[1:2, 1:2] .= 1\n",
"x"
]
},
@@ -808,12 +913,12 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "to a vector of length equal to the number of assigned rows,"
+ "to a vector of length equal to the number of assigned rows using broadcasting"
]
},
{
"cell_type": "code",
- "execution_count": 22,
+ "execution_count": 25,
"metadata": {},
"outputs": [
{
@@ -840,13 +945,13 @@
"│ 2 │ 2 │ 2.0 │ b │"
]
},
- "execution_count": 22,
+ "execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "x[1:2, 1:2] = [1,2]\n",
+ "x[1:2, 1:2] .= [1,2]\n",
"x"
]
},
@@ -854,12 +959,12 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "or to another data frame of matching size."
+ "or to another data frame of matching size and column names, again using broadcasting:"
]
},
{
"cell_type": "code",
- "execution_count": 23,
+ "execution_count": 26,
"metadata": {},
"outputs": [
{
@@ -886,16 +991,31 @@
"│ 2 │ 7 │ 8.0 │ b │"
]
},
- "execution_count": 23,
+ "execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "x[1:2, 1:2] = DataFrame([5 6; 7 8])\n",
+ "x[1:2, 1:2] .= DataFrame([5 6; 7 8], [:A, :B])\n",
"x"
]
},
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "**Caution**\n",
+ "\n",
+ "With `df[!, :col]` and `df.col` syntax you get a direct (non copying) access to a column of a data frame.\n",
+ "This is potentially unsafe as you can easily corrupt data in the `df` data frame if you resize, sort, etc. the column obtained in this way.\n",
+ "Therefore such access should be used with caution.\n",
+ "\n",
+ "Similarly `df[!, cols]` when `cols` is a collection of columns produces a new data frame that holds the same (not copied) columns as the source `df` data frame. Similarly, modifying the data frame obtained via `df[!, cols]` might cause problems with the consistency of `df`.\n",
+ "\n",
+ "The `df[:, :col]` and `df[:, cols]` syntaxes always copy columns so they are safe to use (and should generally be preferred except for performance or memory critical use cases)."
+ ]
+ },
{
"cell_type": "markdown",
"metadata": {},
@@ -912,7 +1032,7 @@
},
{
"cell_type": "code",
- "execution_count": 24,
+ "execution_count": 27,
"metadata": {},
"outputs": [
{
@@ -923,7 +1043,7 @@
" 7"
]
},
- "execution_count": 24,
+ "execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
@@ -934,7 +1054,7 @@
},
{
"cell_type": "code",
- "execution_count": 25,
+ "execution_count": 28,
"metadata": {},
"outputs": [
{
@@ -944,7 +1064,7 @@
"5"
]
},
- "execution_count": 25,
+ "execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
@@ -955,7 +1075,7 @@
},
{
"cell_type": "code",
- "execution_count": 26,
+ "execution_count": 29,
"metadata": {},
"outputs": [
{
@@ -980,7 +1100,7 @@
"│ 1 │ 5 │ 6.0 │"
]
},
- "execution_count": 26,
+ "execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
@@ -991,7 +1111,7 @@
},
{
"cell_type": "code",
- "execution_count": 27,
+ "execution_count": 30,
"metadata": {},
"outputs": [
{
@@ -1018,7 +1138,7 @@
"│ 2 │ 7 │ 8.0 │"
]
},
- "execution_count": 27,
+ "execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
@@ -1029,10 +1149,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/03_missingvalues.ipynb b/03_missingvalues.ipynb
index 96cb30e..11b0084 100644
--- a/03_missingvalues.ipynb
+++ b/03_missingvalues.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 30, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames # load package"
+ "using DataFrames"
]
},
{
@@ -1159,10 +1159,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/04_loadsave.ipynb b/04_loadsave.ipynb
index cabfd93..2a89f7c 100644
--- a/04_loadsave.ipynb
+++ b/04_loadsave.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames # load package"
+ "using DataFrames"
]
},
{
@@ -194,13 +194,13 @@
{
"data": {
"text/html": [
- " | A | B | C | D |
---|
| Bool⍰ | Int64⍰ | String⍰ | String⍰ |
---|
3 rows × 4 columns
1 | true | 1 | missing | a |
---|
2 | false | 2 | b | missing |
---|
3 | true | missing | c | c |
---|
"
+ " | A | B | C | D |
---|
| Bool | Int64⍰ | String⍰ | String⍰ |
---|
3 rows × 4 columns
1 | true | 1 | missing | a |
---|
2 | false | 2 | b | missing |
---|
3 | true | missing | c | c |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
"\t& A & B & C & D\\\\\n",
"\t\\hline\n",
- "\t& Bool⍰ & Int64⍰ & String⍰ & String⍰\\\\\n",
+ "\t& Bool & Int64⍰ & String⍰ & String⍰\\\\\n",
"\t\\hline\n",
"\t1 & true & 1 & & a \\\\\n",
"\t2 & false & 2 & b & \\\\\n",
@@ -210,7 +210,7 @@
"text/plain": [
"3×4 DataFrame\n",
"│ Row │ A │ B │ C │ D │\n",
- "│ │ \u001b[90mBool⍰\u001b[39m │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString⍰\u001b[39m │ \u001b[90mString⍰\u001b[39m │\n",
+ "│ │ \u001b[90mBool\u001b[39m │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString⍰\u001b[39m │ \u001b[90mString⍰\u001b[39m │\n",
"├─────┼───────┼─────────┼─────────┼─────────┤\n",
"│ 1 │ true │ 1 │ \u001b[90mmissing\u001b[39m │ a │\n",
"│ 2 │ false │ 2 │ b │ \u001b[90mmissing\u001b[39m │\n",
@@ -241,8 +241,8 @@
{
"data": {
"text/plain": [
- "4-element Array{Union,1}:\n",
- " Union{Missing, Bool} \n",
+ "4-element Array{Type,1}:\n",
+ " Bool \n",
" Union{Missing, Int64} \n",
" Union{Missing, String}\n",
" Union{Missing, String}"
@@ -635,25 +635,25 @@
"output_type": "stream",
"text": [
"First run\n",
- " 0.745948 seconds (814.64 k allocations: 40.707 MiB, 4.48% gc time)\n",
- " 1.050906 seconds (830.88 k allocations: 42.539 MiB, 2.87% gc time)\n",
- " 0.213652 seconds (427.49 k allocations: 21.266 MiB)\n",
- " 0.318751 seconds (373.35 k allocations: 25.882 MiB, 9.61% gc time)\n",
+ " 1.234840 seconds (1.37 M allocations: 68.621 MiB, 3.34% gc time)\n",
+ " 1.502894 seconds (929.64 k allocations: 47.285 MiB, 1.93% gc time)\n",
+ " 0.275374 seconds (427.33 k allocations: 21.270 MiB, 5.51% gc time)\n",
+ " 0.352993 seconds (397.80 k allocations: 27.044 MiB, 3.63% gc time)\n",
"Second run\n",
- " 0.024630 seconds (54.97 k allocations: 1.052 MiB)\n",
- " 0.016964 seconds (5.53 k allocations: 340.375 KiB)\n",
- " 0.022761 seconds (4.81 k allocations: 243.089 KiB)\n",
- " 0.018969 seconds (34.02 k allocations: 9.008 MiB)\n"
+ " 0.024408 seconds (6.57 k allocations: 292.781 KiB)\n",
+ " 0.017290 seconds (5.54 k allocations: 342.203 KiB)\n",
+ " 0.019022 seconds (4.81 k allocations: 243.089 KiB)\n",
+ " 0.042060 seconds (34.02 k allocations: 9.023 MiB, 28.03% gc time)\n"
]
},
{
"data": {
"text/plain": [
"4-element Array{Int64,1}:\n",
- " 558378\n",
- " 558578\n",
- " 84439\n",
- " 54072"
+ " 558383\n",
+ " 558583\n",
+ " 84312\n",
+ " 54096"
]
},
"execution_count": 20,
@@ -663,9 +663,9 @@
],
"source": [
"bigdf = DataFrame(rand(Bool, 10^3, 10^2))\n",
- "bigdf[1] = Int.(bigdf[1])\n",
- "bigdf[2] = bigdf[2] .+ 0.5\n",
- "bigdf[3] = string.(bigdf[3], \", as string\")\n",
+ "bigdf[!, 1] = Int.(bigdf[!, 1])\n",
+ "bigdf[!, 2] = bigdf[!, 2] .+ 0.5\n",
+ "bigdf[!, 3] = string.(bigdf[!, 3], \", as string\")\n",
"println(\"First run\")\n",
"@time CSV.write(\"bigdf1.csv\", bigdf)\n",
"@time bigdf |> save(\"bigdf2.csv\")\n",
@@ -689,15 +689,15 @@
"output_type": "stream",
"text": [
"First run\n",
- " 0.622640 seconds (802.64 k allocations: 28.521 MiB, 2.97% gc time)\n",
- " 1.679781 seconds (2.60 M allocations: 218.270 MiB, 8.63% gc time)\n",
- " 0.042708 seconds (72.82 k allocations: 2.008 MiB)\n",
- " 0.673740 seconds (639.10 k allocations: 32.375 MiB, 4.97% gc time)\n",
+ " 0.112875 seconds (86.70 k allocations: 4.845 MiB)\n",
+ " 1.787776 seconds (2.63 M allocations: 219.289 MiB, 6.75% gc time)\n",
+ " 0.044459 seconds (72.82 k allocations: 2.008 MiB)\n",
+ " 0.562682 seconds (640.06 k allocations: 32.471 MiB, 4.13% gc time)\n",
"Second run\n",
- " 0.048690 seconds (52.07 k allocations: 1.326 MiB)\n",
- " 0.099486 seconds (506.49 k allocations: 108.821 MiB, 54.91% gc time)\n",
- " 0.006630 seconds (49.60 k allocations: 951.719 KiB)\n",
- " 0.007290 seconds (26.39 k allocations: 1.200 MiB)\n"
+ " 0.010963 seconds (2.15 k allocations: 85.773 KiB)\n",
+ " 0.101021 seconds (506.69 k allocations: 108.049 MiB, 52.35% gc time)\n",
+ " 0.007702 seconds (49.60 k allocations: 952.109 KiB)\n",
+ " 0.007236 seconds (26.39 k allocations: 1.201 MiB)\n"
]
}
],
@@ -733,10 +733,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/05_columns.ipynb b/05_columns.ipynb
index 6dc978e..a5a47f5 100644
--- a/05_columns.ipynb
+++ b/05_columns.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames # load package"
+ "using DataFrames"
]
},
{
@@ -41,7 +41,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | false | false | true | true |
---|
3 | true | true | true | false |
---|
"
+ " | x1 | x2 | x3 | x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | false | false | true |
---|
2 | true | true | false | false |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -49,9 +49,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & false & false & true & true \\\\\n",
- "\t3 & true & true & true & false \\\\\n",
+ "\t1 & false & false & false & true \\\\\n",
+ "\t2 & true & true & false & false \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -59,9 +59,9 @@
"│ Row │ x1 │ x2 │ x3 │ x4 │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ false │ false │ true │ true │\n",
- "│ 3 │ true │ true │ true │ false │"
+ "│ 1 │ false │ false │ false │ true │\n",
+ "│ 2 │ true │ true │ false │ false │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 2,
@@ -88,7 +88,7 @@
{
"data": {
"text/html": [
- " | A | x2 | x3 | x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | false | false | true | true |
---|
3 | true | true | true | false |
---|
"
+ " | A | x2 | x3 | x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | false | false | true |
---|
2 | true | true | false | false |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -96,9 +96,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & false & false & true & true \\\\\n",
- "\t3 & true & true & true & false \\\\\n",
+ "\t1 & false & false & false & true \\\\\n",
+ "\t2 & true & true & false & false \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -106,9 +106,9 @@
"│ Row │ A │ x2 │ x3 │ x4 │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ false │ false │ true │ true │\n",
- "│ 3 │ true │ true │ true │ false │"
+ "│ 1 │ false │ false │ false │ true │\n",
+ "│ 2 │ true │ true │ false │ false │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 3,
@@ -137,7 +137,7 @@
{
"data": {
"text/html": [
- " | x1x1 | x2x2 | x3x3 | x4x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | false | false | true | true |
---|
3 | true | true | true | false |
---|
"
+ " | x1x1 | x2x2 | x3x3 | x4x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | false | false | true |
---|
2 | true | true | false | false |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -145,9 +145,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & false & false & true & true \\\\\n",
- "\t3 & true & true & true & false \\\\\n",
+ "\t1 & false & false & false & true \\\\\n",
+ "\t2 & true & true & false & false \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -155,9 +155,9 @@
"│ Row │ x1x1 │ x2x2 │ x3x3 │ x4x4 │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ false │ false │ true │ true │\n",
- "│ 3 │ true │ true │ true │ false │"
+ "│ 1 │ false │ false │ false │ true │\n",
+ "│ 2 │ true │ true │ false │ false │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 4,
@@ -186,7 +186,7 @@
{
"data": {
"text/html": [
- " | x1x1 | x2x2 | third | x4x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | false | false | true | true |
---|
3 | true | true | true | false |
---|
"
+ " | x1x1 | x2x2 | third | x4x4 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | false | false | true |
---|
2 | true | true | false | false |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -194,9 +194,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & false & false & true & true \\\\\n",
- "\t3 & true & true & true & false \\\\\n",
+ "\t1 & false & false & false & true \\\\\n",
+ "\t2 & true & true & false & false \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -204,9 +204,9 @@
"│ Row │ x1x1 │ x2x2 │ third │ x4x4 │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ false │ false │ true │ true │\n",
- "│ 3 │ true │ true │ true │ false │"
+ "│ 1 │ false │ false │ false │ true │\n",
+ "│ 2 │ true │ true │ false │ false │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 5,
@@ -233,7 +233,7 @@
{
"data": {
"text/html": [
- " | a | b | c | d |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | false | false | true | true |
---|
3 | true | true | true | false |
---|
"
+ " | a | b | c | d |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | false | false | true |
---|
2 | true | true | false | false |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -241,9 +241,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & false & false & true & true \\\\\n",
- "\t3 & true & true & true & false \\\\\n",
+ "\t1 & false & false & false & true \\\\\n",
+ "\t2 & true & true & false & false \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -251,9 +251,9 @@
"│ Row │ a │ b │ c │ d │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ false │ false │ true │ true │\n",
- "│ 3 │ true │ true │ true │ false │"
+ "│ 1 │ false │ false │ false │ true │\n",
+ "│ 2 │ true │ true │ false │ false │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 6,
@@ -285,9 +285,9 @@
"ArgumentError: Duplicate variable names: :a. Pass makeunique=true to make them unique using a suffix automatically.",
"",
"Stacktrace:",
- " [1] #names!#4(::Bool, ::Function, ::DataFrames.Index, ::Array{Symbol,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\index.jl:34",
- " [2] #names!#32 at .\\none:0 [inlined]",
- " [3] names!(::DataFrame, ::Array{Symbol,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\abstractdataframe.jl:122",
+ " [1] #names!#4(::Bool, ::Function, ::DataFrames.Index, ::Array{Symbol,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\other\\index.jl:34",
+ " [2] #names!#38 at .\\none:0 [inlined]",
+ " [3] names!(::DataFrame, ::Array{Symbol,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\abstractdataframe.jl:124",
" [4] top-level scope at In[7]:1"
]
}
@@ -311,7 +311,7 @@
{
"data": {
"text/html": [
- " | a | a_1 | a_2 | a_3 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | false | false | true | true |
---|
3 | true | true | true | false |
---|
"
+ " | a | a_1 | a_2 | a_3 |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | false | false | true |
---|
2 | true | true | false | false |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -319,9 +319,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & false & false & true & true \\\\\n",
- "\t3 & true & true & true & false \\\\\n",
+ "\t1 & false & false & false & true \\\\\n",
+ "\t2 & true & true & false & false \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -329,9 +329,9 @@
"│ Row │ a │ a_1 │ a_2 │ a_3 │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ false │ false │ true │ true │\n",
- "│ 3 │ true │ true │ true │ false │"
+ "│ 1 │ false │ false │ false │ true │\n",
+ "│ 2 │ true │ true │ false │ false │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 8,
@@ -367,7 +367,7 @@
{
"data": {
"text/html": [
- " | a_1 | a_3 | a_2 | a |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | true | false | true |
---|
2 | false | true | true | false |
---|
3 | true | false | true | true |
---|
"
+ " | a_1 | a_3 | a_2 | a |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | false | true | false | false |
---|
2 | true | false | false | true |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -375,9 +375,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & false & true & false & true \\\\\n",
- "\t2 & false & true & true & false \\\\\n",
- "\t3 & true & false & true & true \\\\\n",
+ "\t1 & false & true & false & false \\\\\n",
+ "\t2 & true & false & false & true \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -385,9 +385,9 @@
"│ Row │ a_1 │ a_3 │ a_2 │ a │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ false │ true │ false │ true │\n",
- "│ 2 │ false │ true │ true │ false │\n",
- "│ 3 │ true │ false │ true │ true │"
+ "│ 1 │ false │ true │ false │ false │\n",
+ "│ 2 │ true │ false │ false │ true │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 9,
@@ -398,7 +398,7 @@
"source": [
"using Random\n",
"Random.seed!(1234)\n",
- "x[shuffle(names(x))]"
+ "x[:, shuffle(names(x))]"
]
},
{
@@ -416,7 +416,7 @@
{
"data": {
"text/html": [
- " | a_3 | a_2 | a_1 | a |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | true |
---|
2 | true | true | false | false |
---|
3 | false | true | true | true |
---|
"
+ " | a_3 | a_2 | a_1 | a |
---|
| Bool | Bool | Bool | Bool |
---|
3 rows × 4 columns
1 | true | false | false | false |
---|
2 | false | false | true | true |
---|
3 | true | true | true | true |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -424,9 +424,9 @@
"\t\\hline\n",
"\t& Bool & Bool & Bool & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & true & false & false & true \\\\\n",
- "\t2 & true & true & false & false \\\\\n",
- "\t3 & false & true & true & true \\\\\n",
+ "\t1 & true & false & false & false \\\\\n",
+ "\t2 & false & false & true & true \\\\\n",
+ "\t3 & true & true & true & true \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -434,9 +434,9 @@
"│ Row │ a_3 │ a_2 │ a_1 │ a │\n",
"│ │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
"├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ true │ false │ false │ true │\n",
- "│ 2 │ true │ true │ false │ false │\n",
- "│ 3 │ false │ true │ true │ true │"
+ "│ 1 │ true │ false │ false │ false │\n",
+ "│ 2 │ false │ false │ true │ true │\n",
+ "│ 3 │ true │ true │ true │ true │"
]
},
"execution_count": 10,
@@ -746,7 +746,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 10.795 μs (138 allocations: 11.11 KiB)\n"
+ " 14.600 μs (134 allocations: 10.69 KiB)\n"
]
},
{
@@ -782,7 +782,7 @@
],
"source": [
"using BenchmarkTools\n",
- "@btime [$x[1:2] DataFrame(A=[1,2,3]) $x[3:4]]"
+ "@btime [$x[!, 1:2] DataFrame(A=[1,2,3]) $x[!, 3:4]]"
]
},
{
@@ -895,7 +895,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 1.491 μs (29 allocations: 2.50 KiB)\n"
+ " 2.390 μs (30 allocations: 2.61 KiB)\n"
]
},
{
@@ -1120,7 +1120,7 @@
}
],
"source": [
- "x[[1,2,4,5]]"
+ "x[:, [1,2,4,5]] # use ! instead of : for non-copying operation"
]
},
{
@@ -1167,7 +1167,7 @@
}
],
"source": [
- "x[[:x1, :x4]]"
+ "x[:, [:x1, :x4]]"
]
},
{
@@ -1214,7 +1214,7 @@
}
],
"source": [
- "x[[true, false, true, false, true]]"
+ "x[:, [true, false, true, false, true]]"
]
},
{
@@ -1261,7 +1261,7 @@
}
],
"source": [
- "x[[:x1]]"
+ "x[:, [:x1]]"
]
},
{
@@ -1291,7 +1291,7 @@
}
],
"source": [
- "x[:x1]"
+ "x[!, :x1] # use : instead of ! to copy"
]
},
{
@@ -1344,7 +1344,7 @@
}
],
"source": [
- "x[1]"
+ "x[!, 1]"
]
},
{
@@ -1371,14 +1371,14 @@
}
],
"source": [
- "x[1] === x[[1]]"
+ "x[!, 1] === x[!, [1]]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "and remove everything from a `DataFrame` with `empty!`."
+ "you can also use `Regex` and `Not` from InvertedIndies.jl for column selection:"
]
},
{
@@ -1389,18 +1389,27 @@
{
"data": {
"text/html": [
- ""
+ " | x1 | x2 |
---|
| Tuple… | Tuple… |
---|
3 rows × 2 columns
1 | (1, 1) | (1, 2) |
---|
2 | (2, 1) | (2, 2) |
---|
3 | (3, 1) | (3, 2) |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|}\n",
- "\t& \\\\\n",
+ "\\begin{tabular}{r|cc}\n",
+ "\t& x1 & x2\\\\\n",
"\t\\hline\n",
- "\t& \\\\\n",
+ "\t& Tuple… & Tuple…\\\\\n",
"\t\\hline\n",
+ "\t1 & (1, 1) & (1, 2) \\\\\n",
+ "\t2 & (2, 1) & (2, 2) \\\\\n",
+ "\t3 & (3, 1) & (3, 2) \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "0×0 DataFrame\n"
+ "3×2 DataFrame\n",
+ "│ Row │ x1 │ x2 │\n",
+ "│ │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │\n",
+ "├─────┼────────┼────────┤\n",
+ "│ 1 │ (1, 1) │ (1, 2) │\n",
+ "│ 2 │ (2, 1) │ (2, 2) │\n",
+ "│ 3 │ (3, 1) │ (3, 2) │"
]
},
"execution_count": 32,
@@ -1409,7 +1418,47 @@
}
],
"source": [
- "empty!(y)"
+ "x[!, r\"[12]\"]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ " | x2 | x3 | x4 | x5 |
---|
| Tuple… | Tuple… | Tuple… | Tuple… |
---|
3 rows × 4 columns
1 | (1, 2) | (1, 3) | (1, 4) | (1, 5) |
---|
2 | (2, 2) | (2, 3) | (2, 4) | (2, 5) |
---|
3 | (3, 2) | (3, 3) | (3, 4) | (3, 5) |
---|
"
+ ],
+ "text/latex": [
+ "\\begin{tabular}{r|cccc}\n",
+ "\t& x2 & x3 & x4 & x5\\\\\n",
+ "\t\\hline\n",
+ "\t& Tuple… & Tuple… & Tuple… & Tuple…\\\\\n",
+ "\t\\hline\n",
+ "\t1 & (1, 2) & (1, 3) & (1, 4) & (1, 5) \\\\\n",
+ "\t2 & (2, 2) & (2, 3) & (2, 4) & (2, 5) \\\\\n",
+ "\t3 & (3, 2) & (3, 3) & (3, 4) & (3, 5) \\\\\n",
+ "\\end{tabular}\n"
+ ],
+ "text/plain": [
+ "3×4 DataFrame\n",
+ "│ Row │ x2 │ x3 │ x4 │ x5 │\n",
+ "│ │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │\n",
+ "├─────┼────────┼────────┼────────┼────────┤\n",
+ "│ 1 │ (1, 2) │ (1, 3) │ (1, 4) │ (1, 5) │\n",
+ "│ 2 │ (2, 2) │ (2, 3) │ (2, 4) │ (2, 5) │\n",
+ "│ 3 │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │"
+ ]
+ },
+ "execution_count": 33,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "x[!, Not(1)]"
]
},
{
@@ -1421,7 +1470,7 @@
},
{
"cell_type": "code",
- "execution_count": 33,
+ "execution_count": 34,
"metadata": {},
"outputs": [
{
@@ -1450,7 +1499,7 @@
"│ 3 │ (3, 1) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 33,
+ "execution_count": 34,
"metadata": {},
"output_type": "execute_result"
}
@@ -1461,7 +1510,7 @@
},
{
"cell_type": "code",
- "execution_count": 34,
+ "execution_count": 35,
"metadata": {},
"outputs": [
{
@@ -1490,7 +1539,7 @@
"│ 3 │ (3, 1) │ (3, 2) │"
]
},
- "execution_count": 34,
+ "execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
@@ -1499,6 +1548,46 @@
"df2 = select(df, [1, 2])"
]
},
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ " | x3 | x4 | x5 |
---|
| Tuple… | Tuple… | Tuple… |
---|
3 rows × 3 columns
1 | (1, 3) | (1, 4) | (1, 5) |
---|
2 | (2, 3) | (2, 4) | (2, 5) |
---|
3 | (3, 3) | (3, 4) | (3, 5) |
---|
"
+ ],
+ "text/latex": [
+ "\\begin{tabular}{r|ccc}\n",
+ "\t& x3 & x4 & x5\\\\\n",
+ "\t\\hline\n",
+ "\t& Tuple… & Tuple… & Tuple…\\\\\n",
+ "\t\\hline\n",
+ "\t1 & (1, 3) & (1, 4) & (1, 5) \\\\\n",
+ "\t2 & (2, 3) & (2, 4) & (2, 5) \\\\\n",
+ "\t3 & (3, 3) & (3, 4) & (3, 5) \\\\\n",
+ "\\end{tabular}\n"
+ ],
+ "text/plain": [
+ "3×3 DataFrame\n",
+ "│ Row │ x3 │ x4 │ x5 │\n",
+ "│ │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │\n",
+ "├─────┼────────┼────────┼────────┤\n",
+ "│ 1 │ (1, 3) │ (1, 4) │ (1, 5) │\n",
+ "│ 2 │ (2, 3) │ (2, 4) │ (2, 5) │\n",
+ "│ 3 │ (3, 3) │ (3, 4) │ (3, 5) │"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "select(df, Not([1, 2]))"
+ ]
+ },
{
"cell_type": "markdown",
"metadata": {},
@@ -1508,7 +1597,7 @@
},
{
"cell_type": "code",
- "execution_count": 35,
+ "execution_count": 37,
"metadata": {},
"outputs": [
{
@@ -1517,13 +1606,13 @@
"false"
]
},
- "execution_count": 35,
+ "execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "df2[1] === df[1]"
+ "df2[!, 1] === df[!, 1]"
]
},
{
@@ -1535,7 +1624,7 @@
},
{
"cell_type": "code",
- "execution_count": 36,
+ "execution_count": 38,
"metadata": {},
"outputs": [
{
@@ -1564,7 +1653,7 @@
"│ 3 │ (3, 1) │ (3, 2) │"
]
},
- "execution_count": 36,
+ "execution_count": 38,
"metadata": {},
"output_type": "execute_result"
}
@@ -1575,7 +1664,7 @@
},
{
"cell_type": "code",
- "execution_count": 37,
+ "execution_count": 39,
"metadata": {},
"outputs": [
{
@@ -1584,13 +1673,13 @@
"true"
]
},
- "execution_count": 37,
+ "execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "df2[1] === df[1]"
+ "df2[!, 1] === df[!, 1]"
]
},
{
@@ -1602,7 +1691,7 @@
},
{
"cell_type": "code",
- "execution_count": 38,
+ "execution_count": 40,
"metadata": {},
"outputs": [
{
@@ -1631,7 +1720,7 @@
"│ 3 │ (3, 1) │ (3, 2) │"
]
},
- "execution_count": 38,
+ "execution_count": 40,
"metadata": {},
"output_type": "execute_result"
}
@@ -1642,7 +1731,7 @@
},
{
"cell_type": "code",
- "execution_count": 39,
+ "execution_count": 41,
"metadata": {},
"outputs": [
{
@@ -1651,7 +1740,7 @@
"true"
]
},
- "execution_count": 39,
+ "execution_count": 41,
"metadata": {},
"output_type": "execute_result"
}
@@ -1664,12 +1753,12 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "Here we create a copy of `x` and delete the 3rd column from the copy with `deletecols!`."
+ "Here we create a copy of `x` and delete the 3rd column from the copy with `select!` and `Not`."
]
},
{
"cell_type": "code",
- "execution_count": 40,
+ "execution_count": 42,
"metadata": {},
"outputs": [
{
@@ -1698,26 +1787,26 @@
"│ 3 │ (3, 1) │ (3, 2) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 40,
+ "execution_count": 42,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"z = copy(x)\n",
- "deletecols!(z, 3)"
+ "select!(z, Not(3))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "alternatively we can achieve the same by using the `deletecols` function"
+ "alternatively we can achieve the same by using the `select` function"
]
},
{
"cell_type": "code",
- "execution_count": 41,
+ "execution_count": 43,
"metadata": {},
"outputs": [
{
@@ -1746,13 +1835,13 @@
"│ 3 │ (3, 1) │ (3, 2) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 41,
+ "execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "deletecols(x, 3)"
+ "select(x, Not(3))"
]
},
{
@@ -1764,7 +1853,7 @@
},
{
"cell_type": "code",
- "execution_count": 42,
+ "execution_count": 44,
"metadata": {},
"outputs": [
{
@@ -1793,7 +1882,7 @@
"│ 3 │ (3, 1) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 42,
+ "execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
@@ -1811,14 +1900,14 @@
},
{
"cell_type": "code",
- "execution_count": 43,
+ "execution_count": 45,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- " 1.234 μs (28 allocations: 2.33 KiB)\n"
+ " 2.280 μs (28 allocations: 2.33 KiB)\n"
]
},
{
@@ -1847,25 +1936,25 @@
"│ 3 │ (3, 1) │ (3, 3) │ (3, 5) │"
]
},
- "execution_count": 43,
+ "execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "@btime x[[1,3,5]]"
+ "@btime x[:, [1,3,5]]"
]
},
{
"cell_type": "code",
- "execution_count": 44,
+ "execution_count": 46,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- " 99.008 ns (4 allocations: 256 bytes)\n"
+ " 332.505 ns (4 allocations: 256 bytes)\n"
]
},
{
@@ -1894,13 +1983,13 @@
"│ 3 │ (3, 1) │ (3, 3) │ (3, 5) │"
]
},
- "execution_count": 44,
+ "execution_count": 46,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "@btime @view x[[1,3,5]]"
+ "@btime @view x[:, [1,3,5]]"
]
},
{
@@ -1919,7 +2008,7 @@
},
{
"cell_type": "code",
- "execution_count": 45,
+ "execution_count": 47,
"metadata": {},
"outputs": [
{
@@ -1948,7 +2037,7 @@
"│ 3 │ (3, 1) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 45,
+ "execution_count": 47,
"metadata": {},
"output_type": "execute_result"
}
@@ -1961,12 +2050,12 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "With the following syntax, the existing column is modified without performing any copying."
+ "With the following syntax, the existing column is modified without performing any copying (this is discouraged as it creates column alias)."
]
},
{
"cell_type": "code",
- "execution_count": 46,
+ "execution_count": 48,
"metadata": {},
"outputs": [
{
@@ -1995,16 +2084,46 @@
"│ 3 │ (3, 2) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 46,
+ "execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "x[:x1] = x[:x2]\n",
+ "x[!, :x1] = x[!, :x2]\n",
"x"
]
},
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "this syntax is safer"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 49,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "3-element Array{Tuple{Int64,Int64},1}:\n",
+ " (1, 2)\n",
+ " (2, 2)\n",
+ " (3, 2)"
+ ]
+ },
+ "execution_count": 49,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "x[!, :x1] = x[:, :x2]"
+ ]
+ },
{
"cell_type": "markdown",
"metadata": {},
@@ -2014,7 +2133,7 @@
},
{
"cell_type": "code",
- "execution_count": 47,
+ "execution_count": 50,
"metadata": {},
"outputs": [
{
@@ -2043,13 +2162,13 @@
"│ 3 │ (3, 2) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │ 3 │"
]
},
- "execution_count": 47,
+ "execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "x[:A] = [1,2,3]\n",
+ "x[!, :A] = [1,2,3]\n",
"x"
]
},
@@ -2057,22 +2176,22 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "A new column name will be added to our `DataFrame` with the following syntax as well (7 is equal to `ncol(x)+1`)."
+ "A new column name will be added to our `DataFrame` with the following syntax as well:"
]
},
{
"cell_type": "code",
- "execution_count": 48,
+ "execution_count": 51,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | A | x7 |
---|
| Tuple… | Tuple… | Tuple… | Tuple… | Tuple… | Int64 | Int64 |
---|
3 rows × 7 columns
1 | (1, 2) | (1, 2) | (1, 3) | (1, 4) | (1, 5) | 1 | 11 |
---|
2 | (2, 2) | (2, 2) | (2, 3) | (2, 4) | (2, 5) | 2 | 12 |
---|
3 | (3, 2) | (3, 2) | (3, 3) | (3, 4) | (3, 5) | 3 | 13 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | A | B |
---|
| Tuple… | Tuple… | Tuple… | Tuple… | Tuple… | Int64 | Int64 |
---|
3 rows × 7 columns
1 | (1, 2) | (1, 2) | (1, 3) | (1, 4) | (1, 5) | 1 | 11 |
---|
2 | (2, 2) | (2, 2) | (2, 3) | (2, 4) | (2, 5) | 2 | 12 |
---|
3 | (3, 2) | (3, 2) | (3, 3) | (3, 4) | (3, 5) | 3 | 13 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & A & x7\\\\\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & A & B\\\\\n",
"\t\\hline\n",
"\t& Tuple… & Tuple… & Tuple… & Tuple… & Tuple… & Int64 & Int64\\\\\n",
"\t\\hline\n",
@@ -2083,7 +2202,7 @@
],
"text/plain": [
"3×7 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ A │ x7 │\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ A │ B │\n",
"│ │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mTuple…\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼────────┼────────┼────────┼────────┼────────┼───────┼───────┤\n",
"│ 1 │ (1, 2) │ (1, 2) │ (1, 3) │ (1, 4) │ (1, 5) │ 1 │ 11 │\n",
@@ -2091,13 +2210,13 @@
"│ 3 │ (3, 2) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │ 3 │ 13 │"
]
},
- "execution_count": 48,
+ "execution_count": 51,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "x[7] = 11:13\n",
+ "x.B = 11:13\n",
"x"
]
},
@@ -2110,7 +2229,7 @@
},
{
"cell_type": "code",
- "execution_count": 49,
+ "execution_count": 52,
"metadata": {},
"outputs": [
{
@@ -2139,7 +2258,7 @@
"│ 3 │ (3, 1) │ (3, 2) │ (3, 3) │ (3, 4) │ (3, 5) │"
]
},
- "execution_count": 49,
+ "execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
@@ -2157,7 +2276,7 @@
},
{
"cell_type": "code",
- "execution_count": 50,
+ "execution_count": 53,
"metadata": {},
"outputs": [
{
@@ -2166,13 +2285,13 @@
"true"
]
},
- "execution_count": 50,
+ "execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "haskey(x, :x1)"
+ "hasproperty(x, :x1)"
]
},
{
@@ -2184,7 +2303,7 @@
},
{
"cell_type": "code",
- "execution_count": 51,
+ "execution_count": 54,
"metadata": {},
"outputs": [
{
@@ -2193,7 +2312,7 @@
"2"
]
},
- "execution_count": 51,
+ "execution_count": 54,
"metadata": {},
"output_type": "execute_result"
}
@@ -2204,10 +2323,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/06_rows.ipynb b/06_rows.ipynb
index 63d67aa..ae9029b 100644
--- a/06_rows.ipynb
+++ b/06_rows.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames, Random # load packages\n",
+ "using DataFrames, Random\n",
"Random.seed!(1);"
]
},
@@ -327,7 +327,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "let us add a column to a data frame by assigning a scalar which will be broadcasted"
+ "let us add a column to a data frame by assigning a scalar broadcasting"
]
},
{
@@ -338,7 +338,11 @@
{
"data": {
"text/plain": [
- "1"
+ "4-element Array{Int64,1}:\n",
+ " 1\n",
+ " 1\n",
+ " 1\n",
+ " 1"
]
},
"execution_count": 9,
@@ -347,7 +351,7 @@
}
],
"source": [
- "df.Z = 1"
+ "df[!, :Z] .= 1"
]
},
{
@@ -945,7 +949,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- " it is also easy to swap rows"
+ " it is also easy to swap rows using broadcasted assignment"
]
},
{
@@ -1006,7 +1010,7 @@
],
"source": [
"sort!(x, :id)\n",
- "x[[1,10],:] = x[[10,1],:]\n",
+ "x[[1,10],:] .= x[[10,1],:]\n",
"x"
]
},
@@ -1223,7 +1227,7 @@
}
],
"source": [
- "y = x[reverse(names(x))]"
+ "y = x[:, reverse(names(x))]"
]
},
{
@@ -1299,16 +1303,17 @@
"ArgumentError: column(s) x1 and x2 are missing from argument(s) 2",
"",
"Stacktrace:",
- " [1] #_vcat#68(::Symbol, ::Function, ::Array{DataFrame,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\abstractdataframe.jl:1133",
- " [2] #_vcat at .\\none:0 [inlined]",
- " [3] #vcat#63(::Symbol, ::Function, ::DataFrame, ::Vararg{DataFrame,N} where N) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\abstractdataframe.jl:1103",
- " [4] vcat(::DataFrame, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\abstractdataframe.jl:1103",
- " [5] top-level scope at In[28]:1"
+ " [1] #_vcat#75(::Symbol, ::Function, ::Array{DataFrame,1}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\abstractdataframe.jl:1129",
+ " [2] #reduce#70 at .\\none:0 [inlined]",
+ " [3] #reduce at .\\none:0 [inlined]",
+ " [4] #vcat#69 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\abstractdataframe.jl:1094 [inlined]",
+ " [5] vcat(::DataFrame, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\abstractdataframe.jl:1094",
+ " [6] top-level scope at In[28]:1"
]
}
],
"source": [
- "vcat(x, y[1:3])"
+ "vcat(x, y[:, 1:3])"
]
},
{
@@ -1361,7 +1366,7 @@
}
],
"source": [
- "vcat(x, y[1:3], cols=:intersect)"
+ "vcat(x, y[:, 1:3], cols=:intersect)"
]
},
{
@@ -1407,7 +1412,7 @@
}
],
"source": [
- "vcat(x, y[1:3], cols=:union)"
+ "vcat(x, y[:, 1:3], cols=:union)"
]
},
{
@@ -1453,7 +1458,7 @@
}
],
"source": [
- "vcat(x, y[1:3], cols=[:x1, :x5])"
+ "vcat(x, y[:, 1:3], cols=[:x1, :x5])"
]
},
{
@@ -1530,7 +1535,7 @@
"",
"Stacktrace:",
" [1] error(::String) at .\\error.jl:33",
- " [2] append!(::DataFrame, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\dataframe\\dataframe.jl:1343",
+ " [2] append!(::DataFrame, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\dataframe\\dataframe.jl:1097",
" [3] top-level scope at In[33]:1"
]
}
@@ -2133,7 +2138,7 @@
}
],
"source": [
- "view(x, 1:2)"
+ "view(x, :, 1:2)"
]
},
{
@@ -2356,7 +2361,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "you can also create a new `DataFrame` when deleting rows"
+ "you can also create a new `DataFrame` when deleting rows using `Not` indexing"
]
},
{
@@ -2365,19 +2370,42 @@
"metadata": {},
"outputs": [
{
- "ename": "UndefVarError",
- "evalue": "UndefVarError: deleterows not defined",
- "output_type": "error",
- "traceback": [
- "UndefVarError: deleterows not defined",
- "",
- "Stacktrace:",
- " [1] top-level scope at In[49]:1"
- ]
+ "data": {
+ "text/html": [
+ " | id | val |
---|
| Int64 | Char |
---|
5 rows × 2 columns
1 | 3 | 'c' |
---|
2 | 4 | 'd' |
---|
3 | 5 | 'e' |
---|
4 | 9 | 'i' |
---|
5 | 10 | 'j' |
---|
"
+ ],
+ "text/latex": [
+ "\\begin{tabular}{r|cc}\n",
+ "\t& id & val\\\\\n",
+ "\t\\hline\n",
+ "\t& Int64 & Char\\\\\n",
+ "\t\\hline\n",
+ "\t1 & 3 & 'c' \\\\\n",
+ "\t2 & 4 & 'd' \\\\\n",
+ "\t3 & 5 & 'e' \\\\\n",
+ "\t4 & 9 & 'i' \\\\\n",
+ "\t5 & 10 & 'j' \\\\\n",
+ "\\end{tabular}\n"
+ ],
+ "text/plain": [
+ "5×2 DataFrame\n",
+ "│ Row │ id │ val │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
+ "├─────┼───────┼──────┤\n",
+ "│ 1 │ 3 │ 'c' │\n",
+ "│ 2 │ 4 │ 'd' │\n",
+ "│ 3 │ 5 │ 'e' │\n",
+ "│ 4 │ 9 │ 'i' │\n",
+ "│ 5 │ 10 │ 'j' │"
+ ]
+ },
+ "execution_count": 49,
+ "metadata": {},
+ "output_type": "execute_result"
}
],
"source": [
- "deleterows(x, 1:2)"
+ "x[Not(1:2), :]"
]
},
{
@@ -2978,10 +3006,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/07_factors.ipynb b/07_factors.ipynb
index 94af73b..55cab64 100644
--- a/07_factors.ipynb
+++ b/07_factors.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -142,7 +142,7 @@
{
"data": {
"text/html": [
- " | x | n |
---|
| Categorical… | Int64 |
---|
10 rows × 2 columns
1 | [-4.75934, -1.2763) | 10000 |
---|
2 | [-1.2763, -0.836165) | 10000 |
---|
3 | [-0.836165, -0.521294) | 10000 |
---|
4 | [-0.521294, -0.248401) | 10000 |
---|
5 | [-0.248401, 0.00603496) | 10000 |
---|
6 | [0.00603496, 0.255505) | 10000 |
---|
7 | [0.255505, 0.520679) | 10000 |
---|
8 | [0.520679, 0.842969) | 10000 |
---|
9 | [0.842969, 1.28796) | 10000 |
---|
10 | [1.28796, 4.30851] | 10000 |
---|
"
+ " | x | n |
---|
| Categorical… | Int64 |
---|
10 rows × 2 columns
1 | [-3.97022, -1.28501) | 10000 |
---|
2 | [-1.28501, -0.847175) | 10000 |
---|
3 | [-0.847175, -0.526623) | 10000 |
---|
4 | [-0.526623, -0.256371) | 10000 |
---|
5 | [-0.256371, -0.000949703) | 10000 |
---|
6 | [-0.000949703, 0.253573) | 10000 |
---|
7 | [0.253573, 0.52535) | 10000 |
---|
8 | [0.52535, 0.840664) | 10000 |
---|
9 | [0.840664, 1.27601) | 10000 |
---|
10 | [1.27601, 4.51639] | 10000 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -150,33 +150,33 @@
"\t\\hline\n",
"\t& Categorical… & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & [-4.75934, -1.2763) & 10000 \\\\\n",
- "\t2 & [-1.2763, -0.836165) & 10000 \\\\\n",
- "\t3 & [-0.836165, -0.521294) & 10000 \\\\\n",
- "\t4 & [-0.521294, -0.248401) & 10000 \\\\\n",
- "\t5 & [-0.248401, 0.00603496) & 10000 \\\\\n",
- "\t6 & [0.00603496, 0.255505) & 10000 \\\\\n",
- "\t7 & [0.255505, 0.520679) & 10000 \\\\\n",
- "\t8 & [0.520679, 0.842969) & 10000 \\\\\n",
- "\t9 & [0.842969, 1.28796) & 10000 \\\\\n",
- "\t10 & [1.28796, 4.30851] & 10000 \\\\\n",
+ "\t1 & [-3.97022, -1.28501) & 10000 \\\\\n",
+ "\t2 & [-1.28501, -0.847175) & 10000 \\\\\n",
+ "\t3 & [-0.847175, -0.526623) & 10000 \\\\\n",
+ "\t4 & [-0.526623, -0.256371) & 10000 \\\\\n",
+ "\t5 & [-0.256371, -0.000949703) & 10000 \\\\\n",
+ "\t6 & [-0.000949703, 0.253573) & 10000 \\\\\n",
+ "\t7 & [0.253573, 0.52535) & 10000 \\\\\n",
+ "\t8 & [0.52535, 0.840664) & 10000 \\\\\n",
+ "\t9 & [0.840664, 1.27601) & 10000 \\\\\n",
+ "\t10 & [1.27601, 4.51639] & 10000 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"10×2 DataFrame\n",
- "│ Row │ x │ n │\n",
- "│ │ \u001b[90mCategorical…\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├─────┼─────────────────────────┼───────┤\n",
- "│ 1 │ [-4.75934, -1.2763) │ 10000 │\n",
- "│ 2 │ [-1.2763, -0.836165) │ 10000 │\n",
- "│ 3 │ [-0.836165, -0.521294) │ 10000 │\n",
- "│ 4 │ [-0.521294, -0.248401) │ 10000 │\n",
- "│ 5 │ [-0.248401, 0.00603496) │ 10000 │\n",
- "│ 6 │ [0.00603496, 0.255505) │ 10000 │\n",
- "│ 7 │ [0.255505, 0.520679) │ 10000 │\n",
- "│ 8 │ [0.520679, 0.842969) │ 10000 │\n",
- "│ 9 │ [0.842969, 1.28796) │ 10000 │\n",
- "│ 10 │ [1.28796, 4.30851] │ 10000 │"
+ "│ Row │ x │ n │\n",
+ "│ │ \u001b[90mCategoricalString{UInt32}\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
+ "├─────┼───────────────────────────┼───────┤\n",
+ "│ 1 │ [-3.97022, -1.28501) │ 10000 │\n",
+ "│ 2 │ [-1.28501, -0.847175) │ 10000 │\n",
+ "│ 3 │ [-0.847175, -0.526623) │ 10000 │\n",
+ "│ 4 │ [-0.526623, -0.256371) │ 10000 │\n",
+ "│ 5 │ [-0.256371, -0.000949703) │ 10000 │\n",
+ "│ 6 │ [-0.000949703, 0.253573) │ 10000 │\n",
+ "│ 7 │ [0.253573, 0.52535) │ 10000 │\n",
+ "│ 8 │ [0.52535, 0.840664) │ 10000 │\n",
+ "│ 9 │ [0.840664, 1.27601) │ 10000 │\n",
+ "│ 10 │ [1.27601, 4.51639] │ 10000 │"
]
},
"execution_count": 6,
@@ -418,7 +418,7 @@
"ArgumentError: Unordered CategoricalValue objects cannot be tested for order using <. Use isless instead, or call the ordered! function on the parent array to change this",
"",
"Stacktrace:",
- " [1] <(::CategoricalValue{Int64,UInt32}, ::CategoricalValue{Int64,UInt32}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\value.jl:190",
+ " [1] <(::CategoricalValue{Int64,UInt32}, ::CategoricalValue{Int64,UInt32}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\value.jl:190",
" [2] top-level scope at In[16]:1"
]
}
@@ -461,9 +461,9 @@
"",
"Stacktrace:",
" [1] getindex at .\\dict.jl:478 [inlined]",
- " [2] get at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\pool.jl:88 [inlined]",
- " [3] < at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\value.jl:200 [inlined]",
- " [4] <(::CategoricalString{UInt32}, ::String) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\value.jl:204",
+ " [2] get at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\pool.jl:88 [inlined]",
+ " [3] < at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\value.jl:200 [inlined]",
+ " [4] <(::CategoricalString{UInt32}, ::String) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\value.jl:204",
" [5] top-level scope at In[18]:1"
]
}
@@ -549,8 +549,8 @@
"ArgumentError: cannot remove level \"C\" as it is used at position 4 and allow_missing=false.",
"",
"Stacktrace:",
- " [1] #levels!#60(::Bool, ::Function, ::CategoricalArray{Union{Missing, String},1,UInt32,String,CategoricalString{UInt32},Missing}, ::Array{String,1}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\array.jl:594",
- " [2] levels!(::CategoricalArray{Union{Missing, String},1,UInt32,String,CategoricalString{UInt32},Missing}, ::Array{String,1}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\array.jl:582",
+ " [1] #levels!#55(::Bool, ::Function, ::CategoricalArray{Union{Missing, String},1,UInt32,String,CategoricalString{UInt32},Missing}, ::Array{String,1}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\array.jl:653",
+ " [2] levels!(::CategoricalArray{Union{Missing, String},1,UInt32,String,CategoricalString{UInt32},Missing}, ::Array{String,1}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\array.jl:641",
" [3] top-level scope at In[22]:1"
]
}
@@ -1130,7 +1130,7 @@
"ArgumentError: Unordered CategoricalValue objects cannot be tested for order using <. Use isless instead, or call the ordered! function on the parent array to change this",
"",
"Stacktrace:",
- " [1] <(::CategoricalValue{Int64,UInt32}, ::CategoricalValue{Int64,UInt32}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\value.jl:190",
+ " [1] <(::CategoricalValue{Int64,UInt32}, ::CategoricalValue{Int64,UInt32}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\value.jl:190",
" [2] top-level scope at In[46]:1"
]
}
@@ -1192,7 +1192,7 @@
"ArgumentError: CategoricalValue objects with different pools cannot be tested for order",
"",
"Stacktrace:",
- " [1] isless(::CategoricalValue{Int64,UInt32}, ::CategoricalValue{Int64,UInt32}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\ucKV2\\src\\value.jl:173",
+ " [1] isless(::CategoricalValue{Int64,UInt32}, ::CategoricalValue{Int64,UInt32}) at C:\\Users\\bogum\\.julia\\packages\\CategoricalArrays\\JFETm\\src\\value.jl:173",
" [2] top-level scope at In[49]:2"
]
}
@@ -1351,13 +1351,13 @@
"\\end{tabular}\n"
],
"text/plain": [
- "3×8 DataFrame. Omitted printing of 1 columns\n",
- "│ Row │ variable │ mean │ min │ median │ max │ nunique │ nmissing │\n",
- "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mUnion…\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mUnion…\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mUnion…\u001b[39m │ \u001b[90mNothing\u001b[39m │\n",
- "├─────┼──────────┼────────┼─────┼────────┼─────┼─────────┼──────────┤\n",
- "│ 1 │ x │ 2.0 │ 1 │ 2.0 │ 3 │ │ │\n",
- "│ 2 │ y │ │ 'a' │ │ 'c' │ 3 │ │\n",
- "│ 3 │ z │ │ a │ │ c │ 3 │ │"
+ "3×8 DataFrame\n",
+ "│ Row │ variable │ mean │ min │ median │ max │ nunique │ nmissing │ eltype │\n",
+ "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mUnion…\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mUnion…\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mUnion…\u001b[39m │ \u001b[90mNothing\u001b[39m │ \u001b[90mDataType\u001b[39m │\n",
+ "├─────┼──────────┼────────┼─────┼────────┼─────┼─────────┼──────────┼───────────────────────────┤\n",
+ "│ 1 │ x │ 2.0 │ 1 │ 2.0 │ 3 │ │ │ Int64 │\n",
+ "│ 2 │ y │ │ 'a' │ │ 'c' │ 3 │ │ Char │\n",
+ "│ 3 │ z │ │ a │ │ c │ 3 │ │ CategoricalString{UInt32} │"
]
},
"execution_count": 54,
@@ -1431,13 +1431,13 @@
"\\end{tabular}\n"
],
"text/plain": [
- "3×8 DataFrame. Omitted printing of 1 columns\n",
- "│ Row │ variable │ mean │ min │ median │ max │ nunique │ nmissing │\n",
- "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mNothing\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mNothing\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mNothing\u001b[39m │\n",
- "├─────┼──────────┼─────────┼─────┼─────────┼─────┼─────────┼──────────┤\n",
- "│ 1 │ x │ │ 1 │ │ 3 │ 3 │ │\n",
- "│ 2 │ y │ │ 'a' │ │ 'c' │ 3 │ │\n",
- "│ 3 │ z │ │ a │ │ c │ 3 │ │"
+ "3×8 DataFrame\n",
+ "│ Row │ variable │ mean │ min │ median │ max │ nunique │ nmissing │ eltype │\n",
+ "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mNothing\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mNothing\u001b[39m │ \u001b[90mAny\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mNothing\u001b[39m │ \u001b[90mDataType\u001b[39m │\n",
+ "├─────┼──────────┼─────────┼─────┼─────────┼─────┼─────────┼──────────┼────────────────────────────────┤\n",
+ "│ 1 │ x │ │ 1 │ │ 3 │ 3 │ │ CategoricalValue{Int64,UInt32} │\n",
+ "│ 2 │ y │ │ 'a' │ │ 'c' │ 3 │ │ Char │\n",
+ "│ 3 │ z │ │ a │ │ c │ 3 │ │ CategoricalString{UInt32} │"
]
},
"execution_count": 56,
@@ -1451,10 +1451,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/08_joins.ipynb b/08_joins.ipynb
index b0c0846..87f2612 100644
--- a/08_joins.ipynb
+++ b/08_joins.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames # load package"
+ "using DataFrames"
]
},
{
@@ -120,47 +120,14 @@
]
},
{
- "cell_type": "code",
- "execution_count": 4,
+ "cell_type": "markdown",
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- " | id | name |
---|
| Int64⍰ | String |
---|
5 rows × 2 columns
1 | 1 | Alice |
---|
2 | 2 | Bob |
---|
3 | 3 | Conor |
---|
4 | 4 | Dave |
---|
5 | missing | Zed |
---|
"
- ],
- "text/latex": [
- "\\begin{tabular}{r|cc}\n",
- "\t& id & name\\\\\n",
- "\t\\hline\n",
- "\t& Int64⍰ & String\\\\\n",
- "\t\\hline\n",
- "\t1 & 1 & Alice \\\\\n",
- "\t2 & 2 & Bob \\\\\n",
- "\t3 & 3 & Conor \\\\\n",
- "\t4 & 4 & Dave \\\\\n",
- "\t5 & & Zed \\\\\n",
- "\\end{tabular}\n"
- ],
- "text/plain": [
- "5×2 DataFrame\n",
- "│ Row │ id │ name │\n",
- "│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString\u001b[39m │\n",
- "├─────┼─────────┼────────┤\n",
- "│ 1 │ 1 │ Alice │\n",
- "│ 2 │ 2 │ Bob │\n",
- "│ 3 │ 3 │ Conor │\n",
- "│ 4 │ 4 │ Dave │\n",
- "│ 5 │ \u001b[90mmissing\u001b[39m │ Zed │"
- ]
- },
- "execution_count": 4,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
"source": [
- "rename!(x, :ID=>:id) # names of columns on which we want to join must be the same"
+ "Rules for the `on` keyword argument:\n",
+ "* a single `Symbol` if joining on one column with the same name, e.g. `on=:id`\n",
+ "* a pair or a `Tuple` of `Symbol`s if joining on one column with different names, e.g. `on=(:id, :id2)` or `on=:id=>:id2`\n",
+ "* a vector of `Symbol`s if joining on multiple columns with the same name, e.g. `on=[:id1, :id2]`\n",
+ "* a vector of pairs or `Tuple`s of `Symbol`s if joining on multiple columns with the same name, e.g. `on=[:a1=>:a2, :b1=>:b2]`\n"
]
},
{
@@ -172,17 +139,17 @@
},
{
"cell_type": "code",
- "execution_count": 5,
+ "execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | id | name | age |
---|
| Int64⍰ | String | Int64 |
---|
3 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | missing | Zed | 99 |
---|
"
+ " | ID | name | age |
---|
| Int64⍰ | String | Int64 |
---|
3 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | missing | Zed | 99 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
- "\t& id & name & age\\\\\n",
+ "\t& ID & name & age\\\\\n",
"\t\\hline\n",
"\t& Int64⍰ & String & Int64\\\\\n",
"\t\\hline\n",
@@ -193,7 +160,7 @@
],
"text/plain": [
"3×3 DataFrame\n",
- "│ Row │ id │ name │ age │\n",
+ "│ Row │ ID │ name │ age │\n",
"│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼─────────┼────────┼───────┤\n",
"│ 1 │ 1 │ Alice │ 21 │\n",
@@ -201,28 +168,28 @@
"│ 3 │ \u001b[90mmissing\u001b[39m │ Zed │ 99 │"
]
},
- "execution_count": 5,
+ "execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=:id) # :inner join by default, missing is joined"
+ "join(x, y, on=(:ID,:id)) # :inner join by default, missing is joined"
]
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | id | name | age |
---|
| Int64⍰ | String | Int64⍰ |
---|
5 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | 3 | Conor | missing |
---|
4 | 4 | Dave | missing |
---|
5 | missing | Zed | 99 |
---|
"
+ " | ID | name | age |
---|
| Int64⍰ | String | Int64⍰ |
---|
5 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | 3 | Conor | missing |
---|
4 | 4 | Dave | missing |
---|
5 | missing | Zed | 99 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
- "\t& id & name & age\\\\\n",
+ "\t& ID & name & age\\\\\n",
"\t\\hline\n",
"\t& Int64⍰ & String & Int64⍰\\\\\n",
"\t\\hline\n",
@@ -235,7 +202,7 @@
],
"text/plain": [
"5×3 DataFrame\n",
- "│ Row │ id │ name │ age │\n",
+ "│ Row │ ID │ name │ age │\n",
"│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString\u001b[39m │ \u001b[90mInt64⍰\u001b[39m │\n",
"├─────┼─────────┼────────┼─────────┤\n",
"│ 1 │ 1 │ Alice │ 21 │\n",
@@ -245,28 +212,28 @@
"│ 5 │ \u001b[90mmissing\u001b[39m │ Zed │ 99 │"
]
},
- "execution_count": 6,
+ "execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=:id, kind=:left)"
+ "join(x, y, on=(:ID,:id), kind=:left)"
]
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | id | name | age |
---|
| Int64⍰ | String⍰ | Int64 |
---|
5 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | missing | Zed | 99 |
---|
4 | 5 | missing | 23 |
---|
5 | 6 | missing | 24 |
---|
"
+ " | ID | name | age |
---|
| Int64⍰ | String⍰ | Int64 |
---|
5 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | missing | Zed | 99 |
---|
4 | 5 | missing | 23 |
---|
5 | 6 | missing | 24 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
- "\t& id & name & age\\\\\n",
+ "\t& ID & name & age\\\\\n",
"\t\\hline\n",
"\t& Int64⍰ & String⍰ & Int64\\\\\n",
"\t\\hline\n",
@@ -279,7 +246,7 @@
],
"text/plain": [
"5×3 DataFrame\n",
- "│ Row │ id │ name │ age │\n",
+ "│ Row │ ID │ name │ age │\n",
"│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString⍰\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼─────────┼─────────┼───────┤\n",
"│ 1 │ 1 │ Alice │ 21 │\n",
@@ -289,28 +256,28 @@
"│ 5 │ 6 │ \u001b[90mmissing\u001b[39m │ 24 │"
]
},
- "execution_count": 7,
+ "execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=:id, kind=:right)"
+ "join(x, y, on=(:ID,:id), kind=:right)"
]
},
{
"cell_type": "code",
- "execution_count": 8,
+ "execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | id | name | age |
---|
| Int64⍰ | String⍰ | Int64⍰ |
---|
7 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | 3 | Conor | missing |
---|
4 | 4 | Dave | missing |
---|
5 | missing | Zed | 99 |
---|
6 | 5 | missing | 23 |
---|
7 | 6 | missing | 24 |
---|
"
+ " | ID | name | age |
---|
| Int64⍰ | String⍰ | Int64⍰ |
---|
7 rows × 3 columns
1 | 1 | Alice | 21 |
---|
2 | 2 | Bob | 22 |
---|
3 | 3 | Conor | missing |
---|
4 | 4 | Dave | missing |
---|
5 | missing | Zed | 99 |
---|
6 | 5 | missing | 23 |
---|
7 | 6 | missing | 24 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
- "\t& id & name & age\\\\\n",
+ "\t& ID & name & age\\\\\n",
"\t\\hline\n",
"\t& Int64⍰ & String⍰ & Int64⍰\\\\\n",
"\t\\hline\n",
@@ -325,7 +292,7 @@
],
"text/plain": [
"7×3 DataFrame\n",
- "│ Row │ id │ name │ age │\n",
+ "│ Row │ ID │ name │ age │\n",
"│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString⍰\u001b[39m │ \u001b[90mInt64⍰\u001b[39m │\n",
"├─────┼─────────┼─────────┼─────────┤\n",
"│ 1 │ 1 │ Alice │ 21 │\n",
@@ -337,28 +304,28 @@
"│ 7 │ 6 │ \u001b[90mmissing\u001b[39m │ 24 │"
]
},
- "execution_count": 8,
+ "execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=:id, kind=:outer)"
+ "join(x, y, on=(:ID,:id), kind=:outer)"
]
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | id | name |
---|
| Int64⍰ | String |
---|
3 rows × 2 columns
1 | 1 | Alice |
---|
2 | 2 | Bob |
---|
3 | missing | Zed |
---|
"
+ " | ID | name |
---|
| Int64⍰ | String |
---|
3 rows × 2 columns
1 | 1 | Alice |
---|
2 | 2 | Bob |
---|
3 | missing | Zed |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
- "\t& id & name\\\\\n",
+ "\t& ID & name\\\\\n",
"\t\\hline\n",
"\t& Int64⍰ & String\\\\\n",
"\t\\hline\n",
@@ -369,7 +336,7 @@
],
"text/plain": [
"3×2 DataFrame\n",
- "│ Row │ id │ name │\n",
+ "│ Row │ ID │ name │\n",
"│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString\u001b[39m │\n",
"├─────┼─────────┼────────┤\n",
"│ 1 │ 1 │ Alice │\n",
@@ -377,28 +344,28 @@
"│ 3 │ \u001b[90mmissing\u001b[39m │ Zed │"
]
},
- "execution_count": 9,
+ "execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=:id, kind=:semi)"
+ "join(x, y, on=(:ID,:id), kind=:semi)"
]
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
- " | id | name |
---|
| Int64⍰ | String |
---|
2 rows × 2 columns
1 | 3 | Conor |
---|
2 | 4 | Dave |
---|
"
+ " | ID | name |
---|
| Int64⍰ | String |
---|
2 rows × 2 columns
1 | 3 | Conor |
---|
2 | 4 | Dave |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
- "\t& id & name\\\\\n",
+ "\t& ID & name\\\\\n",
"\t\\hline\n",
"\t& Int64⍰ & String\\\\\n",
"\t\\hline\n",
@@ -408,20 +375,20 @@
],
"text/plain": [
"2×2 DataFrame\n",
- "│ Row │ id │ name │\n",
+ "│ Row │ ID │ name │\n",
"│ │ \u001b[90mInt64⍰\u001b[39m │ \u001b[90mString\u001b[39m │\n",
"├─────┼────────┼────────┤\n",
"│ 1 │ 3 │ Conor │\n",
"│ 2 │ 4 │ Dave │"
]
},
- "execution_count": 10,
+ "execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=:id, kind=:anti)"
+ "join(x, y, on=(:ID,:id), kind=:anti)"
]
},
{
@@ -433,7 +400,7 @@
},
{
"cell_type": "code",
- "execution_count": 11,
+ "execution_count": 10,
"metadata": {},
"outputs": [
{
@@ -468,7 +435,7 @@
"│ 6 │ 2 │ c │"
]
},
- "execution_count": 11,
+ "execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
@@ -486,7 +453,7 @@
},
{
"cell_type": "code",
- "execution_count": 12,
+ "execution_count": 11,
"metadata": {},
"outputs": [
{
@@ -521,7 +488,7 @@
"│ 6 │ \u001b[90mmissing\u001b[39m │ 99 │ Zoe │"
]
},
- "execution_count": 12,
+ "execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
@@ -534,7 +501,7 @@
},
{
"cell_type": "code",
- "execution_count": 13,
+ "execution_count": 12,
"metadata": {},
"outputs": [
{
@@ -569,7 +536,7 @@
"│ 6 │ \u001b[90mmissing\u001b[39m │ 999 │ 100 │"
]
},
- "execution_count": 13,
+ "execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
@@ -582,7 +549,7 @@
},
{
"cell_type": "code",
- "execution_count": 14,
+ "execution_count": 13,
"metadata": {},
"outputs": [
{
@@ -611,7 +578,7 @@
"│ 3 │ \u001b[90mmissing\u001b[39m │ \u001b[90mmissing\u001b[39m │ Zed │ 99 │"
]
},
- "execution_count": 14,
+ "execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
@@ -622,7 +589,7 @@
},
{
"cell_type": "code",
- "execution_count": 15,
+ "execution_count": 14,
"metadata": {
"scrolled": true
},
@@ -671,18 +638,18 @@
"│ 12 │ 3 │ \u001b[90mmissing\u001b[39m │ \u001b[90mmissing\u001b[39m │ 3 │ 24 │ right_only │"
]
},
- "execution_count": 15,
+ "execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=[:id1], makeunique=true, kind=:outer, indicator=:source) # with duplicates all combinations are produced"
+ "join(x, y, on=:id1, makeunique=true, kind=:outer, indicator=:source) # with duplicates all combinations are produced"
]
},
{
"cell_type": "code",
- "execution_count": 16,
+ "execution_count": 15,
"metadata": {},
"outputs": [
{
@@ -693,19 +660,20 @@
"ArgumentError: Merge key(s) are not unique in both df1 and df2. First duplicate in df1 at 2. First duplicate in df2 at 2",
"",
"Stacktrace:",
- " [1] #join#235(::Array{Symbol,1}, ::Symbol, ::Bool, ::Nothing, ::Tuple{Bool,Bool}, ::Function, ::DataFrame, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\join.jl:330",
- " [2] (::getfield(Base, Symbol(\"#kw##join\")))(::NamedTuple{(:on, :makeunique, :validate),Tuple{Array{Symbol,1},Bool,Tuple{Bool,Bool}}}, ::typeof(join), ::DataFrame, ::DataFrame) at .\\none:0",
- " [3] top-level scope at In[16]:1"
+ " [1] #join#251(::Symbol, ::Symbol, ::Bool, ::Nothing, ::Tuple{Bool,Bool}, ::Function, ::DataFrame, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\join.jl:332",
+ " [2] (::getfield(Base, Symbol(\"#kw##join\")))(::NamedTuple{(:on, :makeunique, :validate),Tuple{Symbol,Bool,Tuple{Bool,Bool}}}, ::typeof(join), ::DataFrame, ::DataFrame) at .\\none:0",
+ " [3] top-level scope at In[15]:1"
]
}
],
"source": [
- "join(x, y, on=[:id1], makeunique=true, validate=(true,true)) # you can force validation of uniqueness of key on which you join"
+ "# you can force validation of uniqueness of key on which you join\n",
+ "join(x, y, on=:id1, makeunique=true, validate=(true,true))"
]
},
{
"cell_type": "code",
- "execution_count": 17,
+ "execution_count": 16,
"metadata": {},
"outputs": [
{
@@ -736,21 +704,25 @@
"│ 4 │ \u001b[90mmissing\u001b[39m │ 99 │ Zoe │"
]
},
- "execution_count": 17,
+ "execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "join(x, y, on=[:id1], kind=:semi) # but not by :semi join (as it would duplicate rows)"
+ "join(x, y, on=:id1, kind=:semi) # but not by :semi join (as it would duplicate rows)"
]
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/09_reshaping.ipynb b/09_reshaping.ipynb
index 62166f3..877c5a5 100644
--- a/09_reshaping.ipynb
+++ b/09_reshaping.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -284,7 +284,7 @@
{
"data": {
"text/html": [
- " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.258335 | 0.377114 |
---|
2 | 1 | 'b' | 0.363965 | 0.372239 |
---|
3 | 1 | 'c' | 0.140952 | 0.766512 |
---|
"
+ " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.747331 | 0.593142 |
---|
2 | 1 | 'b' | 0.516209 | 0.0585483 |
---|
3 | 1 | 'c' | 0.557446 | 0.85459 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -292,19 +292,19 @@
"\t\\hline\n",
"\t& Int64 & Char & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 'a' & 0.258335 & 0.377114 \\\\\n",
- "\t2 & 1 & 'b' & 0.363965 & 0.372239 \\\\\n",
- "\t3 & 1 & 'c' & 0.140952 & 0.766512 \\\\\n",
+ "\t1 & 1 & 'a' & 0.747331 & 0.593142 \\\\\n",
+ "\t2 & 1 & 'b' & 0.516209 & 0.0585483 \\\\\n",
+ "\t3 & 1 & 'c' & 0.557446 & 0.85459 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ id │ id2 │ a1 │ a2 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼──────┼──────────┼──────────┤\n",
- "│ 1 │ 1 │ 'a' │ 0.258335 │ 0.377114 │\n",
- "│ 2 │ 1 │ 'b' │ 0.363965 │ 0.372239 │\n",
- "│ 3 │ 1 │ 'c' │ 0.140952 │ 0.766512 │"
+ "│ Row │ id │ id2 │ a1 │ a2 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼──────┼──────────┼───────────┤\n",
+ "│ 1 │ 1 │ 'a' │ 0.747331 │ 0.593142 │\n",
+ "│ 2 │ 1 │ 'b' │ 0.516209 │ 0.0585483 │\n",
+ "│ 3 │ 1 │ 'c' │ 0.557446 │ 0.85459 │"
]
},
"execution_count": 7,
@@ -324,7 +324,7 @@
{
"data": {
"text/html": [
- " | variable | value | id | id2 |
---|
| Symbol | Float64 | Int64 | Char |
---|
6 rows × 4 columns
1 | a1 | 0.258335 | 1 | 'a' |
---|
2 | a1 | 0.363965 | 1 | 'b' |
---|
3 | a1 | 0.140952 | 1 | 'c' |
---|
4 | a2 | 0.377114 | 1 | 'a' |
---|
5 | a2 | 0.372239 | 1 | 'b' |
---|
6 | a2 | 0.766512 | 1 | 'c' |
---|
"
+ " | variable | value | id | id2 |
---|
| Symbol | Float64 | Int64 | Char |
---|
6 rows × 4 columns
1 | a1 | 0.747331 | 1 | 'a' |
---|
2 | a1 | 0.516209 | 1 | 'b' |
---|
3 | a1 | 0.557446 | 1 | 'c' |
---|
4 | a2 | 0.593142 | 1 | 'a' |
---|
5 | a2 | 0.0585483 | 1 | 'b' |
---|
6 | a2 | 0.85459 | 1 | 'c' |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -332,25 +332,25 @@
"\t\\hline\n",
"\t& Symbol & Float64 & Int64 & Char\\\\\n",
"\t\\hline\n",
- "\t1 & a1 & 0.258335 & 1 & 'a' \\\\\n",
- "\t2 & a1 & 0.363965 & 1 & 'b' \\\\\n",
- "\t3 & a1 & 0.140952 & 1 & 'c' \\\\\n",
- "\t4 & a2 & 0.377114 & 1 & 'a' \\\\\n",
- "\t5 & a2 & 0.372239 & 1 & 'b' \\\\\n",
- "\t6 & a2 & 0.766512 & 1 & 'c' \\\\\n",
+ "\t1 & a1 & 0.747331 & 1 & 'a' \\\\\n",
+ "\t2 & a1 & 0.516209 & 1 & 'b' \\\\\n",
+ "\t3 & a1 & 0.557446 & 1 & 'c' \\\\\n",
+ "\t4 & a2 & 0.593142 & 1 & 'a' \\\\\n",
+ "\t5 & a2 & 0.0585483 & 1 & 'b' \\\\\n",
+ "\t6 & a2 & 0.85459 & 1 & 'c' \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"6×4 DataFrame\n",
- "│ Row │ variable │ value │ id │ id2 │\n",
- "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
- "├─────┼──────────┼──────────┼───────┼──────┤\n",
- "│ 1 │ a1 │ 0.258335 │ 1 │ 'a' │\n",
- "│ 2 │ a1 │ 0.363965 │ 1 │ 'b' │\n",
- "│ 3 │ a1 │ 0.140952 │ 1 │ 'c' │\n",
- "│ 4 │ a2 │ 0.377114 │ 1 │ 'a' │\n",
- "│ 5 │ a2 │ 0.372239 │ 1 │ 'b' │\n",
- "│ 6 │ a2 │ 0.766512 │ 1 │ 'c' │"
+ "│ Row │ variable │ value │ id │ id2 │\n",
+ "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
+ "├─────┼──────────┼───────────┼───────┼──────┤\n",
+ "│ 1 │ a1 │ 0.747331 │ 1 │ 'a' │\n",
+ "│ 2 │ a1 │ 0.516209 │ 1 │ 'b' │\n",
+ "│ 3 │ a1 │ 0.557446 │ 1 │ 'c' │\n",
+ "│ 4 │ a2 │ 0.593142 │ 1 │ 'a' │\n",
+ "│ 5 │ a2 │ 0.0585483 │ 1 │ 'b' │\n",
+ "│ 6 │ a2 │ 0.85459 │ 1 │ 'c' │"
]
},
"execution_count": 8,
@@ -370,7 +370,7 @@
{
"data": {
"text/html": [
- " | variable | value |
---|
| Symbol | Float64 |
---|
6 rows × 2 columns
1 | x1 | 0.864447 |
---|
2 | x1 | 0.0040455 |
---|
3 | x1 | 0.396437 |
---|
4 | x2 | 0.0592978 |
---|
5 | x2 | 0.994284 |
---|
6 | x2 | 0.195183 |
---|
"
+ " | variable | value |
---|
| Symbol | Float64 |
---|
6 rows × 2 columns
1 | x1 | 0.460945 |
---|
2 | x1 | 0.0749641 |
---|
3 | x1 | 0.602067 |
---|
4 | x2 | 0.503391 |
---|
5 | x2 | 0.450028 |
---|
6 | x2 | 0.424777 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -378,12 +378,12 @@
"\t\\hline\n",
"\t& Symbol & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & x1 & 0.864447 \\\\\n",
- "\t2 & x1 & 0.0040455 \\\\\n",
- "\t3 & x1 & 0.396437 \\\\\n",
- "\t4 & x2 & 0.0592978 \\\\\n",
- "\t5 & x2 & 0.994284 \\\\\n",
- "\t6 & x2 & 0.195183 \\\\\n",
+ "\t1 & x1 & 0.460945 \\\\\n",
+ "\t2 & x1 & 0.0749641 \\\\\n",
+ "\t3 & x1 & 0.602067 \\\\\n",
+ "\t4 & x2 & 0.503391 \\\\\n",
+ "\t5 & x2 & 0.450028 \\\\\n",
+ "\t6 & x2 & 0.424777 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -391,12 +391,12 @@
"│ Row │ variable │ value │\n",
"│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────────┼───────────┤\n",
- "│ 1 │ x1 │ 0.864447 │\n",
- "│ 2 │ x1 │ 0.0040455 │\n",
- "│ 3 │ x1 │ 0.396437 │\n",
- "│ 4 │ x2 │ 0.0592978 │\n",
- "│ 5 │ x2 │ 0.994284 │\n",
- "│ 6 │ x2 │ 0.195183 │"
+ "│ 1 │ x1 │ 0.460945 │\n",
+ "│ 2 │ x1 │ 0.0749641 │\n",
+ "│ 3 │ x1 │ 0.602067 │\n",
+ "│ 4 │ x2 │ 0.503391 │\n",
+ "│ 5 │ x2 │ 0.450028 │\n",
+ "│ 6 │ x2 │ 0.424777 │"
]
},
"execution_count": 9,
@@ -416,7 +416,7 @@
{
"data": {
"text/html": [
- " | variable | value | key |
---|
| Symbol | Float64 | Int64 |
---|
6 rows × 3 columns
1 | x1 | 0.892777 | 1 |
---|
2 | x1 | 0.0342695 | 1 |
---|
3 | x1 | 0.473633 | 1 |
---|
4 | x2 | 0.817327 | 1 |
---|
5 | x2 | 0.693692 | 1 |
---|
6 | x2 | 0.426453 | 1 |
---|
"
+ " | variable | value | key |
---|
| Symbol | Float64 | Int64 |
---|
6 rows × 3 columns
1 | x1 | 0.819635 | 1 |
---|
2 | x1 | 0.85051 | 1 |
---|
3 | x1 | 0.268018 | 1 |
---|
4 | x2 | 0.55634 | 1 |
---|
5 | x2 | 0.0120418 | 1 |
---|
6 | x2 | 0.882348 | 1 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -424,12 +424,12 @@
"\t\\hline\n",
"\t& Symbol & Float64 & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & x1 & 0.892777 & 1 \\\\\n",
- "\t2 & x1 & 0.0342695 & 1 \\\\\n",
- "\t3 & x1 & 0.473633 & 1 \\\\\n",
- "\t4 & x2 & 0.817327 & 1 \\\\\n",
- "\t5 & x2 & 0.693692 & 1 \\\\\n",
- "\t6 & x2 & 0.426453 & 1 \\\\\n",
+ "\t1 & x1 & 0.819635 & 1 \\\\\n",
+ "\t2 & x1 & 0.85051 & 1 \\\\\n",
+ "\t3 & x1 & 0.268018 & 1 \\\\\n",
+ "\t4 & x2 & 0.55634 & 1 \\\\\n",
+ "\t5 & x2 & 0.0120418 & 1 \\\\\n",
+ "\t6 & x2 & 0.882348 & 1 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -437,12 +437,12 @@
"│ Row │ variable │ value │ key │\n",
"│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼──────────┼───────────┼───────┤\n",
- "│ 1 │ x1 │ 0.892777 │ 1 │\n",
- "│ 2 │ x1 │ 0.0342695 │ 1 │\n",
- "│ 3 │ x1 │ 0.473633 │ 1 │\n",
- "│ 4 │ x2 │ 0.817327 │ 1 │\n",
- "│ 5 │ x2 │ 0.693692 │ 1 │\n",
- "│ 6 │ x2 │ 0.426453 │ 1 │"
+ "│ 1 │ x1 │ 0.819635 │ 1 │\n",
+ "│ 2 │ x1 │ 0.85051 │ 1 │\n",
+ "│ 3 │ x1 │ 0.268018 │ 1 │\n",
+ "│ 4 │ x2 │ 0.55634 │ 1 │\n",
+ "│ 5 │ x2 │ 0.0120418 │ 1 │\n",
+ "│ 6 │ x2 │ 0.882348 │ 1 │"
]
},
"execution_count": 10,
@@ -471,7 +471,7 @@
{
"data": {
"text/html": [
- " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.568815 | 0.46165 |
---|
2 | 1 | 'b' | 0.960133 | 0.0587342 |
---|
3 | 1 | 'c' | 0.555774 | 0.574289 |
---|
"
+ " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.464304 | 0.468282 |
---|
2 | 1 | 'b' | 0.370404 | 0.442787 |
---|
3 | 1 | 'c' | 0.208386 | 0.232125 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -479,19 +479,19 @@
"\t\\hline\n",
"\t& Int64 & Char & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 'a' & 0.568815 & 0.46165 \\\\\n",
- "\t2 & 1 & 'b' & 0.960133 & 0.0587342 \\\\\n",
- "\t3 & 1 & 'c' & 0.555774 & 0.574289 \\\\\n",
+ "\t1 & 1 & 'a' & 0.464304 & 0.468282 \\\\\n",
+ "\t2 & 1 & 'b' & 0.370404 & 0.442787 \\\\\n",
+ "\t3 & 1 & 'c' & 0.208386 & 0.232125 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ id │ id2 │ a1 │ a2 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼──────┼──────────┼───────────┤\n",
- "│ 1 │ 1 │ 'a' │ 0.568815 │ 0.46165 │\n",
- "│ 2 │ 1 │ 'b' │ 0.960133 │ 0.0587342 │\n",
- "│ 3 │ 1 │ 'c' │ 0.555774 │ 0.574289 │"
+ "│ Row │ id │ id2 │ a1 │ a2 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼──────┼──────────┼──────────┤\n",
+ "│ 1 │ 1 │ 'a' │ 0.464304 │ 0.468282 │\n",
+ "│ 2 │ 1 │ 'b' │ 0.370404 │ 0.442787 │\n",
+ "│ 3 │ 1 │ 'c' │ 0.208386 │ 0.232125 │"
]
},
"execution_count": 11,
@@ -511,7 +511,7 @@
{
"data": {
"text/html": [
- " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.568815 | 0.46165 |
---|
2 | 1 | 'b' | 0.960133 | 0.0587342 |
---|
3 | 1 | 'c' | 0.555774 | 0.574289 |
---|
"
+ " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64 | Float64 |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.464304 | 0.468282 |
---|
2 | 1 | 'b' | 0.370404 | 0.442787 |
---|
3 | 1 | 'c' | 0.208386 | 0.232125 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -519,19 +519,19 @@
"\t\\hline\n",
"\t& Int64 & Char & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 'a' & 0.568815 & 0.46165 \\\\\n",
- "\t2 & 1 & 'b' & 0.960133 & 0.0587342 \\\\\n",
- "\t3 & 1 & 'c' & 0.555774 & 0.574289 \\\\\n",
+ "\t1 & 1 & 'a' & 0.464304 & 0.468282 \\\\\n",
+ "\t2 & 1 & 'b' & 0.370404 & 0.442787 \\\\\n",
+ "\t3 & 1 & 'c' & 0.208386 & 0.232125 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ id │ id2 │ a1 │ a2 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼──────┼──────────┼───────────┤\n",
- "│ 1 │ 1 │ 'a' │ 0.568815 │ 0.46165 │\n",
- "│ 2 │ 1 │ 'b' │ 0.960133 │ 0.0587342 │\n",
- "│ 3 │ 1 │ 'c' │ 0.555774 │ 0.574289 │"
+ "│ Row │ id │ id2 │ a1 │ a2 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼──────┼──────────┼──────────┤\n",
+ "│ 1 │ 1 │ 'a' │ 0.464304 │ 0.468282 │\n",
+ "│ 2 │ 1 │ 'b' │ 0.370404 │ 0.442787 │\n",
+ "│ 3 │ 1 │ 'c' │ 0.208386 │ 0.232125 │"
]
},
"metadata": {},
@@ -540,7 +540,7 @@
{
"data": {
"text/html": [
- " | variable | value | id | id2 |
---|
| Symbol | Float64 | Int64 | Char |
---|
6 rows × 4 columns
1 | a1 | 0.568815 | 1 | 'a' |
---|
2 | a1 | 0.960133 | 1 | 'b' |
---|
3 | a1 | 0.555774 | 1 | 'c' |
---|
4 | a2 | 0.46165 | 1 | 'a' |
---|
5 | a2 | 0.0587342 | 1 | 'b' |
---|
6 | a2 | 0.574289 | 1 | 'c' |
---|
"
+ " | variable | value | id | id2 |
---|
| Symbol | Float64 | Int64 | Char |
---|
6 rows × 4 columns
1 | a1 | 0.464304 | 1 | 'a' |
---|
2 | a1 | 0.370404 | 1 | 'b' |
---|
3 | a1 | 0.208386 | 1 | 'c' |
---|
4 | a2 | 0.468282 | 1 | 'a' |
---|
5 | a2 | 0.442787 | 1 | 'b' |
---|
6 | a2 | 0.232125 | 1 | 'c' |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -548,25 +548,25 @@
"\t\\hline\n",
"\t& Symbol & Float64 & Int64 & Char\\\\\n",
"\t\\hline\n",
- "\t1 & a1 & 0.568815 & 1 & 'a' \\\\\n",
- "\t2 & a1 & 0.960133 & 1 & 'b' \\\\\n",
- "\t3 & a1 & 0.555774 & 1 & 'c' \\\\\n",
- "\t4 & a2 & 0.46165 & 1 & 'a' \\\\\n",
- "\t5 & a2 & 0.0587342 & 1 & 'b' \\\\\n",
- "\t6 & a2 & 0.574289 & 1 & 'c' \\\\\n",
+ "\t1 & a1 & 0.464304 & 1 & 'a' \\\\\n",
+ "\t2 & a1 & 0.370404 & 1 & 'b' \\\\\n",
+ "\t3 & a1 & 0.208386 & 1 & 'c' \\\\\n",
+ "\t4 & a2 & 0.468282 & 1 & 'a' \\\\\n",
+ "\t5 & a2 & 0.442787 & 1 & 'b' \\\\\n",
+ "\t6 & a2 & 0.232125 & 1 & 'c' \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"6×4 DataFrame\n",
- "│ Row │ variable │ value │ id │ id2 │\n",
- "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
- "├─────┼──────────┼───────────┼───────┼──────┤\n",
- "│ 1 │ a1 │ 0.568815 │ 1 │ 'a' │\n",
- "│ 2 │ a1 │ 0.960133 │ 1 │ 'b' │\n",
- "│ 3 │ a1 │ 0.555774 │ 1 │ 'c' │\n",
- "│ 4 │ a2 │ 0.46165 │ 1 │ 'a' │\n",
- "│ 5 │ a2 │ 0.0587342 │ 1 │ 'b' │\n",
- "│ 6 │ a2 │ 0.574289 │ 1 │ 'c' │"
+ "│ Row │ variable │ value │ id │ id2 │\n",
+ "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼───────┼──────┤\n",
+ "│ 1 │ a1 │ 0.464304 │ 1 │ 'a' │\n",
+ "│ 2 │ a1 │ 0.370404 │ 1 │ 'b' │\n",
+ "│ 3 │ a1 │ 0.208386 │ 1 │ 'c' │\n",
+ "│ 4 │ a2 │ 0.468282 │ 1 │ 'a' │\n",
+ "│ 5 │ a2 │ 0.442787 │ 1 │ 'b' │\n",
+ "│ 6 │ a2 │ 0.232125 │ 1 │ 'c' │"
]
},
"metadata": {},
@@ -587,7 +587,7 @@
{
"data": {
"text/html": [
- " | id2 | a1 | a2 |
---|
| Char | Float64⍰ | Float64⍰ |
---|
3 rows × 3 columns
1 | 'a' | 0.568815 | 0.46165 |
---|
2 | 'b' | 0.960133 | 0.0587342 |
---|
3 | 'c' | 0.555774 | 0.574289 |
---|
"
+ " | id2 | a1 | a2 |
---|
| Char | Float64⍰ | Float64⍰ |
---|
3 rows × 3 columns
1 | 'a' | 0.464304 | 0.468282 |
---|
2 | 'b' | 0.370404 | 0.442787 |
---|
3 | 'c' | 0.208386 | 0.232125 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -595,19 +595,19 @@
"\t\\hline\n",
"\t& Char & Float64⍰ & Float64⍰\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 0.568815 & 0.46165 \\\\\n",
- "\t2 & 'b' & 0.960133 & 0.0587342 \\\\\n",
- "\t3 & 'c' & 0.555774 & 0.574289 \\\\\n",
+ "\t1 & 'a' & 0.464304 & 0.468282 \\\\\n",
+ "\t2 & 'b' & 0.370404 & 0.442787 \\\\\n",
+ "\t3 & 'c' & 0.208386 & 0.232125 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×3 DataFrame\n",
- "│ Row │ id2 │ a1 │ a2 │\n",
- "│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │\n",
- "├─────┼──────┼──────────┼───────────┤\n",
- "│ 1 │ 'a' │ 0.568815 │ 0.46165 │\n",
- "│ 2 │ 'b' │ 0.960133 │ 0.0587342 │\n",
- "│ 3 │ 'c' │ 0.555774 │ 0.574289 │"
+ "│ Row │ id2 │ a1 │ a2 │\n",
+ "│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │\n",
+ "├─────┼──────┼──────────┼──────────┤\n",
+ "│ 1 │ 'a' │ 0.464304 │ 0.468282 │\n",
+ "│ 2 │ 'b' │ 0.370404 │ 0.442787 │\n",
+ "│ 3 │ 'c' │ 0.208386 │ 0.232125 │"
]
},
"execution_count": 13,
@@ -627,7 +627,7 @@
{
"data": {
"text/html": [
- " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64⍰ | Float64⍰ |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.568815 | 0.46165 |
---|
2 | 1 | 'b' | 0.960133 | 0.0587342 |
---|
3 | 1 | 'c' | 0.555774 | 0.574289 |
---|
"
+ " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64⍰ | Float64⍰ |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.464304 | 0.468282 |
---|
2 | 1 | 'b' | 0.370404 | 0.442787 |
---|
3 | 1 | 'c' | 0.208386 | 0.232125 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -635,19 +635,19 @@
"\t\\hline\n",
"\t& Int64 & Char & Float64⍰ & Float64⍰\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 'a' & 0.568815 & 0.46165 \\\\\n",
- "\t2 & 1 & 'b' & 0.960133 & 0.0587342 \\\\\n",
- "\t3 & 1 & 'c' & 0.555774 & 0.574289 \\\\\n",
+ "\t1 & 1 & 'a' & 0.464304 & 0.468282 \\\\\n",
+ "\t2 & 1 & 'b' & 0.370404 & 0.442787 \\\\\n",
+ "\t3 & 1 & 'c' & 0.208386 & 0.232125 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ id │ id2 │ a1 │ a2 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │\n",
- "├─────┼───────┼──────┼──────────┼───────────┤\n",
- "│ 1 │ 1 │ 'a' │ 0.568815 │ 0.46165 │\n",
- "│ 2 │ 1 │ 'b' │ 0.960133 │ 0.0587342 │\n",
- "│ 3 │ 1 │ 'c' │ 0.555774 │ 0.574289 │"
+ "│ Row │ id │ id2 │ a1 │ a2 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │\n",
+ "├─────┼───────┼──────┼──────────┼──────────┤\n",
+ "│ 1 │ 1 │ 'a' │ 0.464304 │ 0.468282 │\n",
+ "│ 2 │ 1 │ 'b' │ 0.370404 │ 0.442787 │\n",
+ "│ 3 │ 1 │ 'c' │ 0.208386 │ 0.232125 │"
]
},
"execution_count": 14,
@@ -667,7 +667,7 @@
{
"data": {
"text/html": [
- " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64⍰ | Float64⍰ |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.568815 | 0.46165 |
---|
2 | 1 | 'b' | 0.960133 | 0.0587342 |
---|
3 | 1 | 'c' | 0.555774 | 0.574289 |
---|
"
+ " | id | id2 | a1 | a2 |
---|
| Int64 | Char | Float64⍰ | Float64⍰ |
---|
3 rows × 4 columns
1 | 1 | 'a' | 0.464304 | 0.468282 |
---|
2 | 1 | 'b' | 0.370404 | 0.442787 |
---|
3 | 1 | 'c' | 0.208386 | 0.232125 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cccc}\n",
@@ -675,19 +675,19 @@
"\t\\hline\n",
"\t& Int64 & Char & Float64⍰ & Float64⍰\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 'a' & 0.568815 & 0.46165 \\\\\n",
- "\t2 & 1 & 'b' & 0.960133 & 0.0587342 \\\\\n",
- "\t3 & 1 & 'c' & 0.555774 & 0.574289 \\\\\n",
+ "\t1 & 1 & 'a' & 0.464304 & 0.468282 \\\\\n",
+ "\t2 & 1 & 'b' & 0.370404 & 0.442787 \\\\\n",
+ "\t3 & 1 & 'c' & 0.208386 & 0.232125 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×4 DataFrame\n",
- "│ Row │ id │ id2 │ a1 │ a2 │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │\n",
- "├─────┼───────┼──────┼──────────┼───────────┤\n",
- "│ 1 │ 1 │ 'a' │ 0.568815 │ 0.46165 │\n",
- "│ 2 │ 1 │ 'b' │ 0.960133 │ 0.0587342 │\n",
- "│ 3 │ 1 │ 'c' │ 0.555774 │ 0.574289 │"
+ "│ Row │ id │ id2 │ a1 │ a2 │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │ \u001b[90mFloat64⍰\u001b[39m │\n",
+ "├─────┼───────┼──────┼──────────┼──────────┤\n",
+ "│ 1 │ 1 │ 'a' │ 0.464304 │ 0.468282 │\n",
+ "│ 2 │ 1 │ 'b' │ 0.370404 │ 0.442787 │\n",
+ "│ 3 │ 1 │ 'c' │ 0.208386 │ 0.232125 │"
]
},
"execution_count": 15,
@@ -708,7 +708,7 @@
{
"data": {
"text/html": [
- " | variable | value |
---|
| Symbol | Float64 |
---|
6 rows × 2 columns
1 | x1 | 0.14569 |
---|
2 | x1 | 0.0909384 |
---|
3 | x1 | 0.367413 |
---|
4 | x2 | 0.734355 |
---|
5 | x2 | 0.755325 |
---|
6 | x2 | 0.63808 |
---|
"
+ " | variable | value |
---|
| Symbol | Float64 |
---|
6 rows × 2 columns
1 | x1 | 0.449275 |
---|
2 | x1 | 0.145481 |
---|
3 | x1 | 0.952804 |
---|
4 | x2 | 0.558855 |
---|
5 | x2 | 0.815565 |
---|
6 | x2 | 0.343187 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -716,25 +716,25 @@
"\t\\hline\n",
"\t& Symbol & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & x1 & 0.14569 \\\\\n",
- "\t2 & x1 & 0.0909384 \\\\\n",
- "\t3 & x1 & 0.367413 \\\\\n",
- "\t4 & x2 & 0.734355 \\\\\n",
- "\t5 & x2 & 0.755325 \\\\\n",
- "\t6 & x2 & 0.63808 \\\\\n",
+ "\t1 & x1 & 0.449275 \\\\\n",
+ "\t2 & x1 & 0.145481 \\\\\n",
+ "\t3 & x1 & 0.952804 \\\\\n",
+ "\t4 & x2 & 0.558855 \\\\\n",
+ "\t5 & x2 & 0.815565 \\\\\n",
+ "\t6 & x2 & 0.343187 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"6×2 DataFrame\n",
- "│ Row │ variable │ value │\n",
- "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼───────────┤\n",
- "│ 1 │ x1 │ 0.14569 │\n",
- "│ 2 │ x1 │ 0.0909384 │\n",
- "│ 3 │ x1 │ 0.367413 │\n",
- "│ 4 │ x2 │ 0.734355 │\n",
- "│ 5 │ x2 │ 0.755325 │\n",
- "│ 6 │ x2 │ 0.63808 │"
+ "│ Row │ variable │ value │\n",
+ "│ │ \u001b[90mSymbol\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┤\n",
+ "│ 1 │ x1 │ 0.449275 │\n",
+ "│ 2 │ x1 │ 0.145481 │\n",
+ "│ 3 │ x1 │ 0.952804 │\n",
+ "│ 4 │ x2 │ 0.558855 │\n",
+ "│ 5 │ x2 │ 0.815565 │\n",
+ "│ 6 │ x2 │ 0.343187 │"
]
},
"execution_count": 16,
@@ -759,9 +759,9 @@
"ArgumentError: No key column found",
"",
"Stacktrace:",
- " [1] unstack(::DataFrame, ::Array{Symbol,1}, ::Int64, ::Int64) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\reshape.jl:279",
- " [2] unstack(::DataFrame, ::Int64, ::Int64) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\reshape.jl:269",
- " [3] unstack(::DataFrame, ::Symbol, ::Symbol) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\reshape.jl:265",
+ " [1] unstack(::DataFrame, ::Array{Symbol,1}, ::Int64, ::Int64) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\reshape.jl:281",
+ " [2] unstack(::DataFrame, ::Int64, ::Int64) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\reshape.jl:268",
+ " [3] unstack(::DataFrame, ::Symbol, ::Symbol) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\reshape.jl:264",
" [4] top-level scope at In[17]:1"
]
}
@@ -772,10 +772,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/10_transforms.ipynb b/10_transforms.ipynb
index 6d4940b..339c331 100644
--- a/10_transforms.ipynb
+++ b/10_transforms.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -14,7 +14,7 @@
"metadata": {},
"outputs": [],
"source": [
- "using DataFrames # load package"
+ "using DataFrames"
]
},
{
@@ -32,7 +32,7 @@
{
"data": {
"text/html": [
- " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.669188 |
---|
2 | 2 | 2 | 0.109742 |
---|
3 | 3 | 1 | 0.565507 |
---|
4 | 4 | 2 | 0.371262 |
---|
5 | 1 | 1 | 0.769019 |
---|
6 | 2 | 2 | 0.525894 |
---|
7 | 3 | 1 | 0.839502 |
---|
8 | 4 | 2 | 0.282013 |
---|
"
+ " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.10478 |
---|
2 | 2 | 2 | 0.12417 |
---|
3 | 3 | 1 | 0.589577 |
---|
4 | 4 | 2 | 0.418537 |
---|
5 | 1 | 1 | 0.0138044 |
---|
6 | 2 | 2 | 0.124662 |
---|
7 | 3 | 1 | 0.625023 |
---|
8 | 4 | 2 | 0.80303 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -40,29 +40,29 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 1 & 0.669188 \\\\\n",
- "\t2 & 2 & 2 & 0.109742 \\\\\n",
- "\t3 & 3 & 1 & 0.565507 \\\\\n",
- "\t4 & 4 & 2 & 0.371262 \\\\\n",
- "\t5 & 1 & 1 & 0.769019 \\\\\n",
- "\t6 & 2 & 2 & 0.525894 \\\\\n",
- "\t7 & 3 & 1 & 0.839502 \\\\\n",
- "\t8 & 4 & 2 & 0.282013 \\\\\n",
+ "\t1 & 1 & 1 & 0.10478 \\\\\n",
+ "\t2 & 2 & 2 & 0.12417 \\\\\n",
+ "\t3 & 3 & 1 & 0.589577 \\\\\n",
+ "\t4 & 4 & 2 & 0.418537 \\\\\n",
+ "\t5 & 1 & 1 & 0.0138044 \\\\\n",
+ "\t6 & 2 & 2 & 0.124662 \\\\\n",
+ "\t7 & 3 & 1 & 0.625023 \\\\\n",
+ "\t8 & 4 & 2 & 0.80303 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"8×3 DataFrame\n",
- "│ Row │ id │ id2 │ v │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 1 │ 1 │ 0.669188 │\n",
- "│ 2 │ 2 │ 2 │ 0.109742 │\n",
- "│ 3 │ 3 │ 1 │ 0.565507 │\n",
- "│ 4 │ 4 │ 2 │ 0.371262 │\n",
- "│ 5 │ 1 │ 1 │ 0.769019 │\n",
- "│ 6 │ 2 │ 2 │ 0.525894 │\n",
- "│ 7 │ 3 │ 1 │ 0.839502 │\n",
- "│ 8 │ 4 │ 2 │ 0.282013 │"
+ "│ Row │ id │ id2 │ v │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────────┤\n",
+ "│ 1 │ 1 │ 1 │ 0.10478 │\n",
+ "│ 2 │ 2 │ 2 │ 0.12417 │\n",
+ "│ 3 │ 3 │ 1 │ 0.589577 │\n",
+ "│ 4 │ 4 │ 2 │ 0.418537 │\n",
+ "│ 5 │ 1 │ 1 │ 0.0138044 │\n",
+ "│ 6 │ 2 │ 2 │ 0.124662 │\n",
+ "│ 7 │ 3 │ 1 │ 0.625023 │\n",
+ "│ 8 │ 4 │ 2 │ 0.80303 │"
]
},
"execution_count": 2,
@@ -84,7 +84,7 @@
{
"data": {
"text/html": [
- "GroupedDataFrame with 4 groups based on key: id
First Group (2 rows): id = 1
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 1 | 1 | 0.669188 |
---|
2 | 1 | 1 | 0.769019 |
---|
⋮
Last Group (2 rows): id = 4
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 4 | 2 | 0.371262 |
---|
2 | 4 | 2 | 0.282013 |
---|
"
+ "GroupedDataFrame with 4 groups based on key: id
First Group (2 rows): id = 1
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 1 | 1 | 0.10478 |
---|
2 | 1 | 1 | 0.0138044 |
---|
⋮
Last Group (2 rows): id = 4
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 4 | 2 | 0.418537 |
---|
2 | 4 | 2 | 0.80303 |
---|
"
],
"text/latex": [
"GroupedDataFrame with 4 groups based on key: id\n",
@@ -96,8 +96,8 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 1 & 0.669188 \\\\\n",
- "\t2 & 1 & 1 & 0.769019 \\\\\n",
+ "\t1 & 1 & 1 & 0.10478 \\\\\n",
+ "\t2 & 1 & 1 & 0.0138044 \\\\\n",
"\\end{tabular}\n",
"\n",
"$\\dots$\n",
@@ -109,25 +109,25 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 4 & 2 & 0.371262 \\\\\n",
- "\t2 & 4 & 2 & 0.282013 \\\\\n",
+ "\t1 & 4 & 2 & 0.418537 \\\\\n",
+ "\t2 & 4 & 2 & 0.80303 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"GroupedDataFrame with 4 groups based on key: id\n",
"First Group (2 rows): id = 1\n",
- "│ Row │ id │ id2 │ v │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 1 │ 1 │ 0.669188 │\n",
- "│ 2 │ 1 │ 1 │ 0.769019 │\n",
+ "│ Row │ id │ id2 │ v │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────────┤\n",
+ "│ 1 │ 1 │ 1 │ 0.10478 │\n",
+ "│ 2 │ 1 │ 1 │ 0.0138044 │\n",
"⋮\n",
"Last Group (2 rows): id = 4\n",
"│ Row │ id │ id2 │ v │\n",
"│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 4 │ 2 │ 0.371262 │\n",
- "│ 2 │ 4 │ 2 │ 0.282013 │"
+ "│ 1 │ 4 │ 2 │ 0.418537 │\n",
+ "│ 2 │ 4 │ 2 │ 0.80303 │"
]
},
"execution_count": 3,
@@ -147,7 +147,7 @@
{
"data": {
"text/html": [
- "GroupedDataFrame with 4 groups based on keys: id, id2
First Group (2 rows): id = 1, id2 = 1
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 1 | 1 | 0.669188 |
---|
2 | 1 | 1 | 0.769019 |
---|
⋮
Last Group (2 rows): id = 4, id2 = 2
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 4 | 2 | 0.371262 |
---|
2 | 4 | 2 | 0.282013 |
---|
"
+ "GroupedDataFrame with 4 groups based on keys: id, id2
First Group (2 rows): id = 1, id2 = 1
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 1 | 1 | 0.10478 |
---|
2 | 1 | 1 | 0.0138044 |
---|
⋮
Last Group (2 rows): id = 4, id2 = 2
| id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
1 | 4 | 2 | 0.418537 |
---|
2 | 4 | 2 | 0.80303 |
---|
"
],
"text/latex": [
"GroupedDataFrame with 4 groups based on keys: id, id2\n",
@@ -159,8 +159,8 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 1 & 0.669188 \\\\\n",
- "\t2 & 1 & 1 & 0.769019 \\\\\n",
+ "\t1 & 1 & 1 & 0.10478 \\\\\n",
+ "\t2 & 1 & 1 & 0.0138044 \\\\\n",
"\\end{tabular}\n",
"\n",
"$\\dots$\n",
@@ -172,25 +172,25 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 4 & 2 & 0.371262 \\\\\n",
- "\t2 & 4 & 2 & 0.282013 \\\\\n",
+ "\t1 & 4 & 2 & 0.418537 \\\\\n",
+ "\t2 & 4 & 2 & 0.80303 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"GroupedDataFrame with 4 groups based on keys: id, id2\n",
"First Group (2 rows): id = 1, id2 = 1\n",
- "│ Row │ id │ id2 │ v │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 1 │ 1 │ 0.669188 │\n",
- "│ 2 │ 1 │ 1 │ 0.769019 │\n",
+ "│ Row │ id │ id2 │ v │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────────┤\n",
+ "│ 1 │ 1 │ 1 │ 0.10478 │\n",
+ "│ 2 │ 1 │ 1 │ 0.0138044 │\n",
"⋮\n",
"Last Group (2 rows): id = 4, id2 = 2\n",
"│ Row │ id │ id2 │ v │\n",
"│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 4 │ 2 │ 0.371262 │\n",
- "│ 2 │ 4 │ 2 │ 0.282013 │"
+ "│ 1 │ 4 │ 2 │ 0.418537 │\n",
+ "│ 2 │ 4 │ 2 │ 0.80303 │"
]
},
"execution_count": 4,
@@ -210,7 +210,7 @@
{
"data": {
"text/html": [
- " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.669188 |
---|
2 | 2 | 2 | 0.109742 |
---|
3 | 3 | 1 | 0.565507 |
---|
4 | 4 | 2 | 0.371262 |
---|
5 | 1 | 1 | 0.769019 |
---|
6 | 2 | 2 | 0.525894 |
---|
7 | 3 | 1 | 0.839502 |
---|
8 | 4 | 2 | 0.282013 |
---|
"
+ " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.10478 |
---|
2 | 2 | 2 | 0.12417 |
---|
3 | 3 | 1 | 0.589577 |
---|
4 | 4 | 2 | 0.418537 |
---|
5 | 1 | 1 | 0.0138044 |
---|
6 | 2 | 2 | 0.124662 |
---|
7 | 3 | 1 | 0.625023 |
---|
8 | 4 | 2 | 0.80303 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -218,29 +218,29 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 1 & 0.669188 \\\\\n",
- "\t2 & 2 & 2 & 0.109742 \\\\\n",
- "\t3 & 3 & 1 & 0.565507 \\\\\n",
- "\t4 & 4 & 2 & 0.371262 \\\\\n",
- "\t5 & 1 & 1 & 0.769019 \\\\\n",
- "\t6 & 2 & 2 & 0.525894 \\\\\n",
- "\t7 & 3 & 1 & 0.839502 \\\\\n",
- "\t8 & 4 & 2 & 0.282013 \\\\\n",
+ "\t1 & 1 & 1 & 0.10478 \\\\\n",
+ "\t2 & 2 & 2 & 0.12417 \\\\\n",
+ "\t3 & 3 & 1 & 0.589577 \\\\\n",
+ "\t4 & 4 & 2 & 0.418537 \\\\\n",
+ "\t5 & 1 & 1 & 0.0138044 \\\\\n",
+ "\t6 & 2 & 2 & 0.124662 \\\\\n",
+ "\t7 & 3 & 1 & 0.625023 \\\\\n",
+ "\t8 & 4 & 2 & 0.80303 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"8×3 DataFrame\n",
- "│ Row │ id │ id2 │ v │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 1 │ 1 │ 0.669188 │\n",
- "│ 2 │ 2 │ 2 │ 0.109742 │\n",
- "│ 3 │ 3 │ 1 │ 0.565507 │\n",
- "│ 4 │ 4 │ 2 │ 0.371262 │\n",
- "│ 5 │ 1 │ 1 │ 0.769019 │\n",
- "│ 6 │ 2 │ 2 │ 0.525894 │\n",
- "│ 7 │ 3 │ 1 │ 0.839502 │\n",
- "│ 8 │ 4 │ 2 │ 0.282013 │"
+ "│ Row │ id │ id2 │ v │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────────┤\n",
+ "│ 1 │ 1 │ 1 │ 0.10478 │\n",
+ "│ 2 │ 2 │ 2 │ 0.12417 │\n",
+ "│ 3 │ 3 │ 1 │ 0.589577 │\n",
+ "│ 4 │ 4 │ 2 │ 0.418537 │\n",
+ "│ 5 │ 1 │ 1 │ 0.0138044 │\n",
+ "│ 6 │ 2 │ 2 │ 0.124662 │\n",
+ "│ 7 │ 3 │ 1 │ 0.625023 │\n",
+ "│ 8 │ 4 │ 2 │ 0.80303 │"
]
},
"execution_count": 5,
@@ -260,7 +260,7 @@
{
"data": {
"text/html": [
- " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.669188 |
---|
2 | 1 | 1 | 0.769019 |
---|
3 | 2 | 2 | 0.109742 |
---|
4 | 2 | 2 | 0.525894 |
---|
5 | 3 | 1 | 0.565507 |
---|
6 | 3 | 1 | 0.839502 |
---|
7 | 4 | 2 | 0.371262 |
---|
8 | 4 | 2 | 0.282013 |
---|
"
+ " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.10478 |
---|
2 | 1 | 1 | 0.0138044 |
---|
3 | 2 | 2 | 0.12417 |
---|
4 | 2 | 2 | 0.124662 |
---|
5 | 3 | 1 | 0.589577 |
---|
6 | 3 | 1 | 0.625023 |
---|
7 | 4 | 2 | 0.418537 |
---|
8 | 4 | 2 | 0.80303 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -268,29 +268,29 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 1 & 0.669188 \\\\\n",
- "\t2 & 1 & 1 & 0.769019 \\\\\n",
- "\t3 & 2 & 2 & 0.109742 \\\\\n",
- "\t4 & 2 & 2 & 0.525894 \\\\\n",
- "\t5 & 3 & 1 & 0.565507 \\\\\n",
- "\t6 & 3 & 1 & 0.839502 \\\\\n",
- "\t7 & 4 & 2 & 0.371262 \\\\\n",
- "\t8 & 4 & 2 & 0.282013 \\\\\n",
+ "\t1 & 1 & 1 & 0.10478 \\\\\n",
+ "\t2 & 1 & 1 & 0.0138044 \\\\\n",
+ "\t3 & 2 & 2 & 0.12417 \\\\\n",
+ "\t4 & 2 & 2 & 0.124662 \\\\\n",
+ "\t5 & 3 & 1 & 0.589577 \\\\\n",
+ "\t6 & 3 & 1 & 0.625023 \\\\\n",
+ "\t7 & 4 & 2 & 0.418537 \\\\\n",
+ "\t8 & 4 & 2 & 0.80303 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"8×3 DataFrame\n",
- "│ Row │ id │ id2 │ v │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 1 │ 1 │ 0.669188 │\n",
- "│ 2 │ 1 │ 1 │ 0.769019 │\n",
- "│ 3 │ 2 │ 2 │ 0.109742 │\n",
- "│ 4 │ 2 │ 2 │ 0.525894 │\n",
- "│ 5 │ 3 │ 1 │ 0.565507 │\n",
- "│ 6 │ 3 │ 1 │ 0.839502 │\n",
- "│ 7 │ 4 │ 2 │ 0.371262 │\n",
- "│ 8 │ 4 │ 2 │ 0.282013 │"
+ "│ Row │ id │ id2 │ v │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────────┤\n",
+ "│ 1 │ 1 │ 1 │ 0.10478 │\n",
+ "│ 2 │ 1 │ 1 │ 0.0138044 │\n",
+ "│ 3 │ 2 │ 2 │ 0.12417 │\n",
+ "│ 4 │ 2 │ 2 │ 0.124662 │\n",
+ "│ 5 │ 3 │ 1 │ 0.589577 │\n",
+ "│ 6 │ 3 │ 1 │ 0.625023 │\n",
+ "│ 7 │ 4 │ 2 │ 0.418537 │\n",
+ "│ 8 │ 4 │ 2 │ 0.80303 │"
]
},
"execution_count": 6,
@@ -310,7 +310,7 @@
{
"data": {
"text/html": [
- " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.669188 |
---|
2 | 1 | 1 | 0.769019 |
---|
3 | 2 | 2 | 0.109742 |
---|
4 | 2 | 2 | 0.525894 |
---|
5 | 3 | 1 | 0.565507 |
---|
6 | 3 | 1 | 0.839502 |
---|
7 | 4 | 2 | 0.371262 |
---|
8 | 4 | 2 | 0.282013 |
---|
"
+ " | id | id2 | v |
---|
| Int64 | Int64 | Float64 |
---|
8 rows × 3 columns
1 | 1 | 1 | 0.10478 |
---|
2 | 1 | 1 | 0.0138044 |
---|
3 | 2 | 2 | 0.12417 |
---|
4 | 2 | 2 | 0.124662 |
---|
5 | 3 | 1 | 0.589577 |
---|
6 | 3 | 1 | 0.625023 |
---|
7 | 4 | 2 | 0.418537 |
---|
8 | 4 | 2 | 0.80303 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -318,29 +318,29 @@
"\t\\hline\n",
"\t& Int64 & Int64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 1 & 1 & 0.669188 \\\\\n",
- "\t2 & 1 & 1 & 0.769019 \\\\\n",
- "\t3 & 2 & 2 & 0.109742 \\\\\n",
- "\t4 & 2 & 2 & 0.525894 \\\\\n",
- "\t5 & 3 & 1 & 0.565507 \\\\\n",
- "\t6 & 3 & 1 & 0.839502 \\\\\n",
- "\t7 & 4 & 2 & 0.371262 \\\\\n",
- "\t8 & 4 & 2 & 0.282013 \\\\\n",
+ "\t1 & 1 & 1 & 0.10478 \\\\\n",
+ "\t2 & 1 & 1 & 0.0138044 \\\\\n",
+ "\t3 & 2 & 2 & 0.12417 \\\\\n",
+ "\t4 & 2 & 2 & 0.124662 \\\\\n",
+ "\t5 & 3 & 1 & 0.589577 \\\\\n",
+ "\t6 & 3 & 1 & 0.625023 \\\\\n",
+ "\t7 & 4 & 2 & 0.418537 \\\\\n",
+ "\t8 & 4 & 2 & 0.80303 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"8×3 DataFrame\n",
- "│ Row │ id │ id2 │ v │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────┼───────┼──────────┤\n",
- "│ 1 │ 1 │ 1 │ 0.669188 │\n",
- "│ 2 │ 1 │ 1 │ 0.769019 │\n",
- "│ 3 │ 2 │ 2 │ 0.109742 │\n",
- "│ 4 │ 2 │ 2 │ 0.525894 │\n",
- "│ 5 │ 3 │ 1 │ 0.565507 │\n",
- "│ 6 │ 3 │ 1 │ 0.839502 │\n",
- "│ 7 │ 4 │ 2 │ 0.371262 │\n",
- "│ 8 │ 4 │ 2 │ 0.282013 │"
+ "│ Row │ id │ id2 │ v │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────────┤\n",
+ "│ 1 │ 1 │ 1 │ 0.10478 │\n",
+ "│ 2 │ 1 │ 1 │ 0.0138044 │\n",
+ "│ 3 │ 2 │ 2 │ 0.12417 │\n",
+ "│ 4 │ 2 │ 2 │ 0.124662 │\n",
+ "│ 5 │ 3 │ 1 │ 0.589577 │\n",
+ "│ 6 │ 3 │ 1 │ 0.625023 │\n",
+ "│ 7 │ 4 │ 2 │ 0.418537 │\n",
+ "│ 8 │ 4 │ 2 │ 0.80303 │"
]
},
"execution_count": 7,
@@ -574,7 +574,7 @@
{
"data": {
"text/html": [
- " | id | v_mean |
---|
| Char | Float64 |
---|
4 rows × 2 columns
1 | 'a' | 0.422648 |
---|
2 | 'd' | 0.49053 |
---|
3 | 'c' | 0.512698 |
---|
4 | 'b' | 0.476415 |
---|
"
+ " | id | v_mean |
---|
| Char | Float64 |
---|
4 rows × 2 columns
1 | 'd' | 0.390678 |
---|
2 | 'a' | 0.497141 |
---|
3 | 'c' | 0.474066 |
---|
4 | 'b' | 0.596518 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -582,10 +582,10 @@
"\t\\hline\n",
"\t& Char & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 0.422648 \\\\\n",
- "\t2 & 'd' & 0.49053 \\\\\n",
- "\t3 & 'c' & 0.512698 \\\\\n",
- "\t4 & 'b' & 0.476415 \\\\\n",
+ "\t1 & 'd' & 0.390678 \\\\\n",
+ "\t2 & 'a' & 0.497141 \\\\\n",
+ "\t3 & 'c' & 0.474066 \\\\\n",
+ "\t4 & 'b' & 0.596518 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -593,10 +593,10 @@
"│ Row │ id │ v_mean │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────┼──────────┤\n",
- "│ 1 │ 'a' │ 0.422648 │\n",
- "│ 2 │ 'd' │ 0.49053 │\n",
- "│ 3 │ 'c' │ 0.512698 │\n",
- "│ 4 │ 'b' │ 0.476415 │"
+ "│ 1 │ 'd' │ 0.390678 │\n",
+ "│ 2 │ 'a' │ 0.497141 │\n",
+ "│ 3 │ 'c' │ 0.474066 │\n",
+ "│ 4 │ 'b' │ 0.596518 │"
]
},
"execution_count": 13,
@@ -618,7 +618,7 @@
{
"data": {
"text/html": [
- " | id | v_mean |
---|
| Char | Float64 |
---|
4 rows × 2 columns
1 | 'a' | 0.422648 |
---|
2 | 'b' | 0.476415 |
---|
3 | 'c' | 0.512698 |
---|
4 | 'd' | 0.49053 |
---|
"
+ " | id | v_mean |
---|
| Char | Float64 |
---|
4 rows × 2 columns
1 | 'a' | 0.497141 |
---|
2 | 'b' | 0.596518 |
---|
3 | 'c' | 0.474066 |
---|
4 | 'd' | 0.390678 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -626,10 +626,10 @@
"\t\\hline\n",
"\t& Char & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 0.422648 \\\\\n",
- "\t2 & 'b' & 0.476415 \\\\\n",
- "\t3 & 'c' & 0.512698 \\\\\n",
- "\t4 & 'd' & 0.49053 \\\\\n",
+ "\t1 & 'a' & 0.497141 \\\\\n",
+ "\t2 & 'b' & 0.596518 \\\\\n",
+ "\t3 & 'c' & 0.474066 \\\\\n",
+ "\t4 & 'd' & 0.390678 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -637,10 +637,10 @@
"│ Row │ id │ v_mean │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────┼──────────┤\n",
- "│ 1 │ 'a' │ 0.422648 │\n",
- "│ 2 │ 'b' │ 0.476415 │\n",
- "│ 3 │ 'c' │ 0.512698 │\n",
- "│ 4 │ 'd' │ 0.49053 │"
+ "│ 1 │ 'a' │ 0.497141 │\n",
+ "│ 2 │ 'b' │ 0.596518 │\n",
+ "│ 3 │ 'c' │ 0.474066 │\n",
+ "│ 4 │ 'd' │ 0.390678 │"
]
},
"execution_count": 14,
@@ -660,7 +660,7 @@
{
"data": {
"text/html": [
- " | id | res |
---|
| Char | Float64 |
---|
4 rows × 2 columns
1 | 'a' | 0.422648 |
---|
2 | 'd' | 0.49053 |
---|
3 | 'c' | 0.512698 |
---|
4 | 'b' | 0.476415 |
---|
"
+ " | id | res |
---|
| Char | Float64 |
---|
4 rows × 2 columns
1 | 'd' | 0.390678 |
---|
2 | 'a' | 0.497141 |
---|
3 | 'c' | 0.474066 |
---|
4 | 'b' | 0.596518 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -668,10 +668,10 @@
"\t\\hline\n",
"\t& Char & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 0.422648 \\\\\n",
- "\t2 & 'd' & 0.49053 \\\\\n",
- "\t3 & 'c' & 0.512698 \\\\\n",
- "\t4 & 'b' & 0.476415 \\\\\n",
+ "\t1 & 'd' & 0.390678 \\\\\n",
+ "\t2 & 'a' & 0.497141 \\\\\n",
+ "\t3 & 'c' & 0.474066 \\\\\n",
+ "\t4 & 'b' & 0.596518 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -679,10 +679,10 @@
"│ Row │ id │ res │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────┼──────────┤\n",
- "│ 1 │ 'a' │ 0.422648 │\n",
- "│ 2 │ 'd' │ 0.49053 │\n",
- "│ 3 │ 'c' │ 0.512698 │\n",
- "│ 4 │ 'b' │ 0.476415 │"
+ "│ 1 │ 'd' │ 0.390678 │\n",
+ "│ 2 │ 'a' │ 0.497141 │\n",
+ "│ 3 │ 'c' │ 0.474066 │\n",
+ "│ 4 │ 'b' │ 0.596518 │"
]
},
"execution_count": 15,
@@ -702,7 +702,7 @@
{
"data": {
"text/html": [
- " | id | res1 | res2 |
---|
| Char | Float64 | Float64 |
---|
4 rows × 3 columns
1 | 'a' | 0.422648 | 10.5662 |
---|
2 | 'd' | 0.49053 | 12.2632 |
---|
3 | 'c' | 0.512698 | 14.3555 |
---|
4 | 'b' | 0.476415 | 10.4811 |
---|
"
+ " | id | res1 | res2 |
---|
| Char | Float64 | Float64 |
---|
4 rows × 3 columns
1 | 'd' | 0.390678 | 11.7203 |
---|
2 | 'a' | 0.497141 | 12.9257 |
---|
3 | 'c' | 0.474066 | 9.00726 |
---|
4 | 'b' | 0.596518 | 14.913 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -710,10 +710,10 @@
"\t\\hline\n",
"\t& Char & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 0.422648 & 10.5662 \\\\\n",
- "\t2 & 'd' & 0.49053 & 12.2632 \\\\\n",
- "\t3 & 'c' & 0.512698 & 14.3555 \\\\\n",
- "\t4 & 'b' & 0.476415 & 10.4811 \\\\\n",
+ "\t1 & 'd' & 0.390678 & 11.7203 \\\\\n",
+ "\t2 & 'a' & 0.497141 & 12.9257 \\\\\n",
+ "\t3 & 'c' & 0.474066 & 9.00726 \\\\\n",
+ "\t4 & 'b' & 0.596518 & 14.913 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -721,10 +721,10 @@
"│ Row │ id │ res1 │ res2 │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────┼──────────┼─────────┤\n",
- "│ 1 │ 'a' │ 0.422648 │ 10.5662 │\n",
- "│ 2 │ 'd' │ 0.49053 │ 12.2632 │\n",
- "│ 3 │ 'c' │ 0.512698 │ 14.3555 │\n",
- "│ 4 │ 'b' │ 0.476415 │ 10.4811 │"
+ "│ 1 │ 'd' │ 0.390678 │ 11.7203 │\n",
+ "│ 2 │ 'a' │ 0.497141 │ 12.9257 │\n",
+ "│ 3 │ 'c' │ 0.474066 │ 9.00726 │\n",
+ "│ 4 │ 'b' │ 0.596518 │ 14.913 │"
]
},
"execution_count": 16,
@@ -744,7 +744,7 @@
{
"data": {
"text/html": [
- " | id | x1_sum | x2_sum |
---|
| Char | Float64 | Float64 |
---|
4 rows × 3 columns
1 | 'a' | 14.607 | 13.2739 |
---|
2 | 'b' | 13.7696 | 12.2106 |
---|
3 | 'd' | 14.6563 | 13.3629 |
---|
4 | 'c' | 8.99698 | 8.32711 |
---|
"
+ " | id | x1_sum | x2_sum |
---|
| Char | Float64 | Float64 |
---|
4 rows × 3 columns
1 | 'a' | 8.23606 | 11.7367 |
---|
2 | 'd' | 11.7255 | 11.619 |
---|
3 | 'b' | 15.6555 | 19.0192 |
---|
4 | 'c' | 9.86516 | 12.5744 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -752,10 +752,10 @@
"\t\\hline\n",
"\t& Char & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 14.607 & 13.2739 \\\\\n",
- "\t2 & 'b' & 13.7696 & 12.2106 \\\\\n",
- "\t3 & 'd' & 14.6563 & 13.3629 \\\\\n",
- "\t4 & 'c' & 8.99698 & 8.32711 \\\\\n",
+ "\t1 & 'a' & 8.23606 & 11.7367 \\\\\n",
+ "\t2 & 'd' & 11.7255 & 11.619 \\\\\n",
+ "\t3 & 'b' & 15.6555 & 19.0192 \\\\\n",
+ "\t4 & 'c' & 9.86516 & 12.5744 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -763,10 +763,10 @@
"│ Row │ id │ x1_sum │ x2_sum │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────┼─────────┼─────────┤\n",
- "│ 1 │ 'a' │ 14.607 │ 13.2739 │\n",
- "│ 2 │ 'b' │ 13.7696 │ 12.2106 │\n",
- "│ 3 │ 'd' │ 14.6563 │ 13.3629 │\n",
- "│ 4 │ 'c' │ 8.99698 │ 8.32711 │"
+ "│ 1 │ 'a' │ 8.23606 │ 11.7367 │\n",
+ "│ 2 │ 'd' │ 11.7255 │ 11.619 │\n",
+ "│ 3 │ 'b' │ 15.6555 │ 19.0192 │\n",
+ "│ 4 │ 'c' │ 9.86516 │ 12.5744 │"
]
},
"execution_count": 17,
@@ -787,7 +787,7 @@
{
"data": {
"text/html": [
- " | id | x1_sum | x2_sum |
---|
| Char | Float64 | Float64 |
---|
4 rows × 3 columns
1 | 'a' | 14.607 | 13.2739 |
---|
2 | 'b' | 13.7696 | 12.2106 |
---|
3 | 'c' | 8.99698 | 8.32711 |
---|
4 | 'd' | 14.6563 | 13.3629 |
---|
"
+ " | id | x1_sum | x2_sum |
---|
| Char | Float64 | Float64 |
---|
4 rows × 3 columns
1 | 'a' | 8.23606 | 11.7367 |
---|
2 | 'b' | 15.6555 | 19.0192 |
---|
3 | 'c' | 9.86516 | 12.5744 |
---|
4 | 'd' | 11.7255 | 11.619 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccc}\n",
@@ -795,10 +795,10 @@
"\t\\hline\n",
"\t& Char & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 14.607 & 13.2739 \\\\\n",
- "\t2 & 'b' & 13.7696 & 12.2106 \\\\\n",
- "\t3 & 'c' & 8.99698 & 8.32711 \\\\\n",
- "\t4 & 'd' & 14.6563 & 13.3629 \\\\\n",
+ "\t1 & 'a' & 8.23606 & 11.7367 \\\\\n",
+ "\t2 & 'b' & 15.6555 & 19.0192 \\\\\n",
+ "\t3 & 'c' & 9.86516 & 12.5744 \\\\\n",
+ "\t4 & 'd' & 11.7255 & 11.619 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -806,10 +806,10 @@
"│ Row │ id │ x1_sum │ x2_sum │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
"├─────┼──────┼─────────┼─────────┤\n",
- "│ 1 │ 'a' │ 14.607 │ 13.2739 │\n",
- "│ 2 │ 'b' │ 13.7696 │ 12.2106 │\n",
- "│ 3 │ 'c' │ 8.99698 │ 8.32711 │\n",
- "│ 4 │ 'd' │ 14.6563 │ 13.3629 │"
+ "│ 1 │ 'a' │ 8.23606 │ 11.7367 │\n",
+ "│ 2 │ 'b' │ 15.6555 │ 19.0192 │\n",
+ "│ 3 │ 'c' │ 9.86516 │ 12.5744 │\n",
+ "│ 4 │ 'd' │ 11.7255 │ 11.619 │"
]
},
"execution_count": 18,
@@ -836,7 +836,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 5 columns
1 | 0.794226 | 0.573936 | 0.0182556 | 0.970179 | 0.152322 |
---|
2 | 0.37604 | 0.667302 | 0.0819991 | 0.785111 | 0.57178 |
---|
3 | 0.0236083 | 0.474579 | 0.699137 | 0.653099 | 0.407289 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 5 columns
1 | 0.871468 | 0.808436 | 0.911253 | 0.874194 | 0.464073 |
---|
2 | 0.150354 | 0.0535118 | 0.454532 | 0.561612 | 0.992404 |
---|
3 | 0.856464 | 0.720174 | 0.6033 | 0.0396877 | 0.766774 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccccc}\n",
@@ -844,19 +844,19 @@
"\t\\hline\n",
"\t& Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.794226 & 0.573936 & 0.0182556 & 0.970179 & 0.152322 \\\\\n",
- "\t2 & 0.37604 & 0.667302 & 0.0819991 & 0.785111 & 0.57178 \\\\\n",
- "\t3 & 0.0236083 & 0.474579 & 0.699137 & 0.653099 & 0.407289 \\\\\n",
+ "\t1 & 0.871468 & 0.808436 & 0.911253 & 0.874194 & 0.464073 \\\\\n",
+ "\t2 & 0.150354 & 0.0535118 & 0.454532 & 0.561612 & 0.992404 \\\\\n",
+ "\t3 & 0.856464 & 0.720174 & 0.6033 & 0.0396877 & 0.766774 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×5 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────────┼──────────┼───────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.794226 │ 0.573936 │ 0.0182556 │ 0.970179 │ 0.152322 │\n",
- "│ 2 │ 0.37604 │ 0.667302 │ 0.0819991 │ 0.785111 │ 0.57178 │\n",
- "│ 3 │ 0.0236083 │ 0.474579 │ 0.699137 │ 0.653099 │ 0.407289 │"
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼───────────┼──────────┼───────────┼──────────┤\n",
+ "│ 1 │ 0.871468 │ 0.808436 │ 0.911253 │ 0.874194 │ 0.464073 │\n",
+ "│ 2 │ 0.150354 │ 0.0535118 │ 0.454532 │ 0.561612 │ 0.992404 │\n",
+ "│ 3 │ 0.856464 │ 0.720174 │ 0.6033 │ 0.0396877 │ 0.766774 │"
]
},
"execution_count": 19,
@@ -876,7 +876,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 5 columns
1 | 0.397958 | 0.571939 | 0.266464 | 0.802796 | 0.37713 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 5 columns
1 | 0.626096 | 0.527374 | 0.656362 | 0.491831 | 0.741084 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccccc}\n",
@@ -884,15 +884,15 @@
"\t\\hline\n",
"\t& Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.397958 & 0.571939 & 0.266464 & 0.802796 & 0.37713 \\\\\n",
+ "\t1 & 0.626096 & 0.527374 & 0.656362 & 0.491831 & 0.741084 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"1×5 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┤\n",
- "│ 1 │ 0.397958 │ 0.571939 │ 0.266464 │ 0.802796 │ 0.37713 │"
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
+ "│ 1 │ 0.626096 │ 0.527374 │ 0.656362 │ 0.491831 │ 0.741084 │"
]
},
"execution_count": 20,
@@ -913,11 +913,11 @@
"data": {
"text/plain": [
"5-element Array{Float64,1}:\n",
- " 0.39795790415870774\n",
- " 0.5719388527626287 \n",
- " 0.2664640269034721 \n",
- " 0.802796253753856 \n",
- " 0.3771303884586173 "
+ " 0.6260955643810758 \n",
+ " 0.5273739348161611 \n",
+ " 0.6563615251562763 \n",
+ " 0.49183121389389717\n",
+ " 0.7410837257895078 "
]
},
"execution_count": 21,
@@ -938,11 +938,11 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "x1: 0.39795790415870774\n",
- "x2: 0.5719388527626287\n",
- "x3: 0.2664640269034721\n",
- "x4: 0.802796253753856\n",
- "x5: 0.3771303884586173\n"
+ "x1: 0.6260955643810758\n",
+ "x2: 0.5273739348161611\n",
+ "x3: 0.6563615251562763\n",
+ "x4: 0.49183121389389717\n",
+ "x5: 0.7410837257895078\n"
]
}
],
@@ -959,9 +959,9 @@
"data": {
"text/plain": [
"3-element Array{Float64,1}:\n",
- " 1.3838231125266938\n",
- " 0.5635224473407595\n",
- " 0.0497457748145321"
+ " 1.0779680742970097\n",
+ " 2.8097399040760487\n",
+ " 1.1892462969726694"
]
},
"execution_count": 23,
@@ -975,10 +975,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/11_performance.ipynb b/11_performance.ipynb
index 4e1d8c0..c0104ab 100644
--- a/11_performance.ipynb
+++ b/11_performance.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -41,14 +41,14 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 4.112 ns (0 allocations: 0 bytes)\n",
- " 13.879 ns (0 allocations: 0 bytes)\n"
+ " 4.199 ns (0 allocations: 0 bytes)\n",
+ " 14.328 ns (0 allocations: 0 bytes)\n"
]
}
],
"source": [
"x = DataFrame(rand(5, 1000))\n",
- "@btime $x[500];\n",
+ "@btime $x[!, 500];\n",
"@btime $x.x500;"
]
},
@@ -68,7 +68,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 83.589 ms (5999023 allocations: 122.06 MiB)\n"
+ " 83.402 ms (5999023 allocations: 122.06 MiB)\n"
]
}
],
@@ -76,7 +76,7 @@
"using Random\n",
"function f_bad() # this function will be slow\n",
" Random.seed!(1); x = DataFrame(rand(1000000,2))\n",
- " y, z = x[1], x[2]\n",
+ " y, z = x[!, 1], x[!, 2]\n",
" p = 0.0\n",
" for i in 1:nrow(x)\n",
" p += y[i]*z[i]\n",
@@ -98,8 +98,8 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 12.459 ms (45 allocations: 30.52 MiB)\n",
- " 12.350 ms (45 allocations: 30.52 MiB)\n"
+ " 12.379 ms (45 allocations: 30.52 MiB)\n",
+ " 12.863 ms (45 allocations: 30.52 MiB)\n"
]
}
],
@@ -115,13 +115,13 @@
"\n",
"function f_barrier() # extract the work to an inner function\n",
" Random.seed!(1); x = DataFrame(rand(1000000,2))\n",
- " f_inner(x[1], x[2])\n",
+ " f_inner(x[!, 1], x[!, 2])\n",
"end\n",
"\n",
"using LinearAlgebra\n",
"function f_inbuilt() # or use inbuilt function if possible\n",
" Random.seed!(1); x = DataFrame(rand(1000000,2))\n",
- " dot(x[1], x[2])\n",
+ " dot(x[!, 1], x[!, 2])\n",
"end\n",
"\n",
"@btime f_barrier();\n",
@@ -137,7 +137,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 12.330 ms (45 allocations: 30.52 MiB)\n"
+ " 12.582 ms (45 allocations: 30.52 MiB)\n"
]
}
],
@@ -147,7 +147,7 @@
"# This example assumes that you have DataFrames master at least from August 31, 2018\n",
"function f_typed()\n",
" Random.seed!(1); x = DataFrame(rand(1000000,2))\n",
- " y::Vector{Float64}, z::Vector{Float64} = x[1], x[2]\n",
+ " y::Vector{Float64}, z::Vector{Float64} = x[!, 1], x[!, 2]\n",
" p = 0.0\n",
" for i in 1:nrow(x)\n",
" p += y[i]*z[i]\n",
@@ -181,10 +181,10 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 20.568 ms (1949837 allocations: 37.42 MiB)\n",
- " 23.942 ms (1950037 allocations: 45.06 MiB)\n",
- " 1.632 ms (937 allocations: 7.69 MiB)\n",
- " 2.739 ms (1137 allocations: 15.32 MiB)\n"
+ " 20.849 ms (1949837 allocations: 37.42 MiB)\n",
+ " 21.840 ms (1950037 allocations: 45.06 MiB)\n",
+ " 1.568 ms (937 allocations: 7.69 MiB)\n",
+ " 2.538 ms (1137 allocations: 15.32 MiB)\n"
]
}
],
@@ -192,7 +192,7 @@
"function f1()\n",
" x = DataFrame!([Vector{Float64}(undef, 10^4) for i in 1:100]) # we work with a DataFrame directly\n",
" for c in 1:ncol(x)\n",
- " d = x[c]\n",
+ " d = x[!, c]\n",
" for r in 1:nrow(x)\n",
" d[r] = rand()\n",
" end\n",
@@ -203,7 +203,7 @@
"function f1a()\n",
" x = DataFrame([Vector{Float64}(undef, 10^4) for i in 1:100]) # we work with a DataFrame directly\n",
" for c in 1:ncol(x)\n",
- " d = x[c]\n",
+ " d = x[!, c]\n",
" for r in 1:nrow(x)\n",
" d[r] = rand()\n",
" end\n",
@@ -257,9 +257,9 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 14.224 ms (175 allocations: 38.16 MiB)\n",
- " 172.509 ns (1 allocation: 16 bytes)\n",
- " 199.227 ns (5 allocations: 80 bytes)\n"
+ " 13.669 ms (174 allocations: 38.16 MiB)\n",
+ " 166.582 ns (1 allocation: 16 bytes)\n",
+ " 193.721 ns (5 allocations: 80 bytes)\n"
]
}
],
@@ -293,24 +293,24 @@
"text": [
"Int64\n",
" raw:\n",
- " 4.660 ms (7 allocations: 7.63 MiB)\n",
+ " 4.625 ms (7 allocations: 7.63 MiB)\n",
" categorical:\n",
- " 18.671 ms (4 allocations: 608 bytes)\n",
+ " 18.108 ms (4 allocations: 608 bytes)\n",
"String\n",
" raw:\n",
- " 23.233 ms (4 allocations: 608 bytes)\n",
+ " 23.858 ms (4 allocations: 608 bytes)\n",
" categorical:\n",
- " 28.929 ms (4 allocations: 608 bytes)\n",
+ " 30.332 ms (4 allocations: 608 bytes)\n",
"Union{Missing, Int64}\n",
" raw:\n",
- " 10.270 ms (4 allocations: 624 bytes)\n",
+ " 10.390 ms (4 allocations: 624 bytes)\n",
" categorical:\n",
- " 18.987 ms (4 allocations: 608 bytes)\n",
+ " 18.695 ms (4 allocations: 608 bytes)\n",
"Union{Missing, String}\n",
" raw:\n",
- " 19.391 ms (4 allocations: 608 bytes)\n",
+ " 24.059 ms (4 allocations: 608 bytes)\n",
" categorical:\n",
- " 30.102 ms (4 allocations: 608 bytes)\n"
+ " 37.816 ms (4 allocations: 608 bytes)\n"
]
}
],
@@ -359,13 +359,13 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 353.072 ms (192 allocations: 471.33 MiB)\n"
+ " 313.270 ms (196 allocations: 433.19 MiB)\n"
]
},
{
"data": {
"text/html": [
- " | x | x1 |
---|
| Char | Int64 |
---|
4 rows × 2 columns
1 | 'b' | 2498764 |
---|
2 | 'd' | 2499255 |
---|
3 | 'a' | 2500996 |
---|
4 | 'c' | 2500985 |
---|
"
+ " | x | x1 |
---|
| Char | Int64 |
---|
4 rows × 2 columns
1 | 'b' | 2504347 |
---|
2 | 'd' | 2498415 |
---|
3 | 'c' | 2499953 |
---|
4 | 'a' | 2497285 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -373,10 +373,10 @@
"\t\\hline\n",
"\t& Char & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 'b' & 2498764 \\\\\n",
- "\t2 & 'd' & 2499255 \\\\\n",
- "\t3 & 'a' & 2500996 \\\\\n",
- "\t4 & 'c' & 2500985 \\\\\n",
+ "\t1 & 'b' & 2504347 \\\\\n",
+ "\t2 & 'd' & 2498415 \\\\\n",
+ "\t3 & 'c' & 2499953 \\\\\n",
+ "\t4 & 'a' & 2497285 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -384,10 +384,10 @@
"│ Row │ x │ x1 │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼──────┼─────────┤\n",
- "│ 1 │ 'b' │ 2498764 │\n",
- "│ 2 │ 'd' │ 2499255 │\n",
- "│ 3 │ 'a' │ 2500996 │\n",
- "│ 4 │ 'c' │ 2500985 │"
+ "│ 1 │ 'b' │ 2504347 │\n",
+ "│ 2 │ 'd' │ 2498415 │\n",
+ "│ 3 │ 'c' │ 2499953 │\n",
+ "│ 4 │ 'a' │ 2497285 │"
]
},
"execution_count": 10,
@@ -408,13 +408,13 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 216.236 ms (152 allocations: 395.04 MiB)\n"
+ " 218.989 ms (157 allocations: 356.89 MiB)\n"
]
},
{
"data": {
"text/html": [
- " | x | y_sum |
---|
| Char | Int64 |
---|
4 rows × 2 columns
1 | 'b' | 2498764 |
---|
2 | 'd' | 2499255 |
---|
3 | 'a' | 2500996 |
---|
4 | 'c' | 2500985 |
---|
"
+ " | x | y_sum |
---|
| Char | Int64 |
---|
4 rows × 2 columns
1 | 'b' | 2504347 |
---|
2 | 'd' | 2498415 |
---|
3 | 'c' | 2499953 |
---|
4 | 'a' | 2497285 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -422,10 +422,10 @@
"\t\\hline\n",
"\t& Char & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 'b' & 2498764 \\\\\n",
- "\t2 & 'd' & 2499255 \\\\\n",
- "\t3 & 'a' & 2500996 \\\\\n",
- "\t4 & 'c' & 2500985 \\\\\n",
+ "\t1 & 'b' & 2504347 \\\\\n",
+ "\t2 & 'd' & 2498415 \\\\\n",
+ "\t3 & 'c' & 2499953 \\\\\n",
+ "\t4 & 'a' & 2497285 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -433,10 +433,10 @@
"│ Row │ x │ y_sum │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼──────┼─────────┤\n",
- "│ 1 │ 'b' │ 2498764 │\n",
- "│ 2 │ 'd' │ 2499255 │\n",
- "│ 3 │ 'a' │ 2500996 │\n",
- "│ 4 │ 'c' │ 2500985 │"
+ "│ 1 │ 'b' │ 2504347 │\n",
+ "│ 2 │ 'd' │ 2498415 │\n",
+ "│ 3 │ 'c' │ 2499953 │\n",
+ "│ 4 │ 'a' │ 2497285 │"
]
},
"execution_count": 11,
@@ -466,13 +466,13 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 110.713 ms (187 allocations: 190.75 MiB)\n"
+ " 97.493 ms (176 allocations: 152.60 MiB)\n"
]
},
{
"data": {
"text/html": [
- " | x | y_sum |
---|
| Categorical… | Int64 |
---|
4 rows × 2 columns
1 | 'a' | 2500996 |
---|
2 | 'b' | 2498764 |
---|
3 | 'c' | 2500985 |
---|
4 | 'd' | 2499255 |
---|
"
+ " | x | y_sum |
---|
| Categorical… | Int64 |
---|
4 rows × 2 columns
1 | 'a' | 2497285 |
---|
2 | 'b' | 2504347 |
---|
3 | 'c' | 2499953 |
---|
4 | 'd' | 2498415 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -480,10 +480,10 @@
"\t\\hline\n",
"\t& Categorical… & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 'a' & 2500996 \\\\\n",
- "\t2 & 'b' & 2498764 \\\\\n",
- "\t3 & 'c' & 2500985 \\\\\n",
- "\t4 & 'd' & 2499255 \\\\\n",
+ "\t1 & 'a' & 2497285 \\\\\n",
+ "\t2 & 'b' & 2504347 \\\\\n",
+ "\t3 & 'c' & 2499953 \\\\\n",
+ "\t4 & 'd' & 2498415 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -491,10 +491,10 @@
"│ Row │ x │ y_sum │\n",
"│ │ \u001b[90mCategorical…\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼──────────────┼─────────┤\n",
- "│ 1 │ 'a' │ 2500996 │\n",
- "│ 2 │ 'b' │ 2498764 │\n",
- "│ 3 │ 'c' │ 2500985 │\n",
- "│ 4 │ 'd' │ 2499255 │"
+ "│ 1 │ 'a' │ 2497285 │\n",
+ "│ 2 │ 'b' │ 2504347 │\n",
+ "│ 3 │ 'c' │ 2499953 │\n",
+ "│ 4 │ 'd' │ 2498415 │"
]
},
"execution_count": 13,
@@ -526,30 +526,24 @@
"10000000-element PooledArray{Char,UInt8,1,Array{UInt8,1}}:\n",
" 'b'\n",
" 'd'\n",
- " 'a'\n",
- " 'd'\n",
" 'b'\n",
- " 'c'\n",
- " 'a'\n",
" 'd'\n",
" 'c'\n",
- " 'a'\n",
- " 'c'\n",
- " 'c'\n",
- " 'a'\n",
- " ⋮ \n",
- " 'b'\n",
" 'b'\n",
" 'b'\n",
" 'b'\n",
- " 'd'\n",
" 'c'\n",
+ " 'c'\n",
+ " ⋮ \n",
" 'a'\n",
- " 'a'\n",
+ " 'c'\n",
" 'b'\n",
" 'b'\n",
+ " 'd'\n",
" 'c'\n",
- " 'c'"
+ " 'b'\n",
+ " 'a'\n",
+ " 'a'"
]
},
"execution_count": 15,
@@ -570,13 +564,13 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 128.121 ms (167 allocations: 162.14 MiB)\n"
+ " 97.074 ms (166 allocations: 152.60 MiB)\n"
]
},
{
"data": {
"text/html": [
- " | x | y_sum |
---|
| Char | Int64 |
---|
4 rows × 2 columns
1 | 'b' | 2498764 |
---|
2 | 'd' | 2499255 |
---|
3 | 'a' | 2500996 |
---|
4 | 'c' | 2500985 |
---|
"
+ " | x | y_sum |
---|
| Char | Int64 |
---|
4 rows × 2 columns
1 | 'b' | 2504347 |
---|
2 | 'd' | 2498415 |
---|
3 | 'c' | 2499953 |
---|
4 | 'a' | 2497285 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|cc}\n",
@@ -584,10 +578,10 @@
"\t\\hline\n",
"\t& Char & Int64\\\\\n",
"\t\\hline\n",
- "\t1 & 'b' & 2498764 \\\\\n",
- "\t2 & 'd' & 2499255 \\\\\n",
- "\t3 & 'a' & 2500996 \\\\\n",
- "\t4 & 'c' & 2500985 \\\\\n",
+ "\t1 & 'b' & 2504347 \\\\\n",
+ "\t2 & 'd' & 2498415 \\\\\n",
+ "\t3 & 'c' & 2499953 \\\\\n",
+ "\t4 & 'a' & 2497285 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
@@ -595,10 +589,10 @@
"│ Row │ x │ y_sum │\n",
"│ │ \u001b[90mChar\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
"├─────┼──────┼─────────┤\n",
- "│ 1 │ 'b' │ 2498764 │\n",
- "│ 2 │ 'd' │ 2499255 │\n",
- "│ 3 │ 'a' │ 2500996 │\n",
- "│ 4 │ 'c' │ 2500985 │"
+ "│ 1 │ 'b' │ 2504347 │\n",
+ "│ 2 │ 'd' │ 2498415 │\n",
+ "│ 3 │ 'c' │ 2499953 │\n",
+ "│ 4 │ 'a' │ 2497285 │"
]
},
"execution_count": 16,
@@ -625,74 +619,62 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
100 rows × 1,000 columns (omitted printing of 993 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 |
---|
2 | 0.774187 | 0.356867 | 0.885526 | 0.11275 | 0.780669 | 0.593082 | 0.939199 |
---|
3 | 0.609714 | 0.288531 | 0.355283 | 0.480804 | 0.593935 | 0.893138 | 0.99899 |
---|
4 | 0.694783 | 0.570324 | 0.0789985 | 0.818004 | 0.554942 | 0.0996372 | 0.861696 |
---|
5 | 0.791302 | 0.905282 | 0.117797 | 0.406855 | 0.681548 | 0.819496 | 0.0545339 |
---|
6 | 0.0740549 | 0.679826 | 0.168822 | 0.518838 | 0.335502 | 0.565356 | 0.819869 |
---|
7 | 0.621834 | 0.759774 | 0.562538 | 0.560436 | 0.269123 | 0.340253 | 0.532622 |
---|
8 | 0.1039 | 0.919697 | 0.418945 | 0.813356 | 0.716439 | 0.545716 | 0.783745 |
---|
9 | 0.954089 | 0.808411 | 0.0782112 | 0.154967 | 0.730512 | 0.57385 | 0.0323516 |
---|
10 | 0.484041 | 0.0670306 | 0.568193 | 0.236212 | 0.648555 | 0.282126 | 0.819354 |
---|
11 | 0.610301 | 0.553308 | 0.464705 | 0.2572 | 0.327319 | 0.928381 | 0.677589 |
---|
12 | 0.671759 | 0.0358856 | 0.662134 | 0.52969 | 0.199269 | 0.884487 | 0.724972 |
---|
13 | 0.91624 | 0.985905 | 0.430527 | 0.582321 | 0.635674 | 0.514479 | 0.398271 |
---|
14 | 0.598099 | 0.073587 | 0.811309 | 0.464078 | 0.043888 | 0.449827 | 0.823583 |
---|
15 | 0.108107 | 0.993988 | 0.474159 | 0.553098 | 0.86545 | 0.796407 | 0.58157 |
---|
16 | 0.877811 | 0.234663 | 0.780657 | 0.426909 | 0.572277 | 0.217617 | 0.0395133 |
---|
17 | 0.888415 | 0.28329 | 0.695983 | 0.447424 | 0.0684627 | 0.427942 | 0.117392 |
---|
18 | 0.475098 | 0.708805 | 0.000950559 | 0.620568 | 0.788072 | 0.983017 | 0.487377 |
---|
19 | 0.569646 | 0.530991 | 0.414847 | 0.575629 | 0.735323 | 0.870151 | 0.639259 |
---|
20 | 0.282279 | 0.686557 | 0.759713 | 0.442214 | 0.878599 | 0.771261 | 0.962957 |
---|
21 | 0.621119 | 0.277282 | 0.659875 | 0.770778 | 0.0339144 | 0.901382 | 0.614408 |
---|
22 | 0.00578011 | 0.490124 | 0.158736 | 0.0548638 | 0.547278 | 0.334688 | 0.645415 |
---|
23 | 0.336331 | 0.833446 | 0.990959 | 0.819531 | 0.744571 | 0.894532 | 0.259292 |
---|
24 | 0.818868 | 0.122261 | 0.449699 | 0.997103 | 0.991652 | 0.0650257 | 0.985957 |
---|
25 | 0.751488 | 0.0348871 | 0.442447 | 0.811686 | 0.617123 | 0.600312 | 0.0492889 |
---|
26 | 0.289911 | 0.468436 | 0.296111 | 0.309392 | 0.639848 | 0.228368 | 0.197872 |
---|
27 | 0.246239 | 0.137146 | 0.219654 | 0.631327 | 0.151176 | 0.247654 | 0.591798 |
---|
28 | 0.551238 | 0.785143 | 0.383137 | 0.160481 | 0.575538 | 0.212515 | 0.132044 |
---|
29 | 0.00790199 | 0.243278 | 0.296137 | 0.950761 | 0.507507 | 0.895889 | 0.582313 |
---|
30 | 0.648146 | 0.721099 | 0.987836 | 0.804139 | 0.0243184 | 0.460729 | 0.726689 |
---|
⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 | x21 | x22 | x23 | x24 | x25 | x26 | x27 | x28 | x29 | x30 | x31 | x32 | x33 | x34 | x35 | x36 | x37 | x38 | x39 | x40 | x41 | x42 | x43 | x44 | x45 | x46 | x47 | x48 | x49 | x50 | x51 | x52 | x53 | x54 | x55 | x56 | x57 | x58 | x59 | x60 | x61 | x62 | x63 | x64 | x65 | x66 | x67 | x68 | x69 | x70 | x71 | x72 | x73 | x74 | x75 | x76 | x77 | x78 | x79 | x80 | x81 | x82 | x83 | x84 | x85 | x86 | x87 | x88 | x89 | x90 | x91 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
100 rows × 1,000 columns (omitted printing of 909 columns)
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 | 0.192599 | 0.00604097 | 0.581288 | 0.746245 | 0.385509 | 0.355455 | 0.929221 | 0.729291 | 0.778783 | 0.598102 | 0.498373 | 0.0278266 | 0.0462616 | 0.0804585 | 0.486005 | 0.829665 | 0.605489 | 0.922619 | 0.615983 | 0.975146 | 0.218467 | 0.214458 | 0.201525 | 0.388645 | 0.558404 | 0.163782 | 0.437683 | 0.897702 | 0.0696074 | 0.656873 | 0.096646 | 0.604482 | 0.826148 | 0.90222 | 0.213158 | 0.145633 | 0.715524 | 0.821202 | 0.851274 | 0.809465 | 0.938894 | 0.833493 | 0.0128205 | 0.911447 | 0.572925 | 0.492402 | 0.70685 | 0.391735 | 0.379956 | 0.894197 | 0.319608 | 0.282724 | 0.662529 | 0.751371 | 0.0515758 | 0.0554555 | 0.407253 | 0.714758 | 0.930454 | 0.34133 | 0.409226 | 0.0593862 | 0.943453 | 0.396289 | 0.611359 | 0.630375 | 0.0122984 | 0.948587 | 0.395367 | 0.912241 | 0.192444 |
---|
2 | 0.815357 | 0.7703 | 0.239176 | 0.275748 | 0.183924 | 0.507341 | 0.284418 | 0.28708 | 0.942902 | 0.0887963 | 0.734511 | 0.379075 | 0.434635 | 0.474651 | 0.280465 | 0.180545 | 0.997093 | 0.58534 | 0.404039 | 0.0574775 | 0.829238 | 0.551627 | 0.0609086 | 0.866673 | 0.00203838 | 0.23122 | 0.100199 | 0.542427 | 0.6176 | 0.210846 | 0.169462 | 0.317331 | 0.120702 | 0.522714 | 0.771854 | 0.861075 | 0.607028 | 0.577105 | 0.0263973 | 0.508519 | 0.207115 | 0.260203 | 0.966495 | 0.950563 | 0.23515 | 0.807233 | 0.667959 | 0.469412 | 0.68944 | 0.303178 | 0.916198 | 0.175827 | 0.630586 | 0.617525 | 0.436164 | 0.30317 | 0.0596742 | 0.0982103 | 0.094269 | 0.774918 | 0.74536 | 0.45168 | 0.0928307 | 0.314255 | 0.837564 | 0.507878 | 0.633839 | 0.298748 | 0.501813 | 0.667421 | 0.244102 | 0.99187 | 0.320146 | 0.327764 | 0.0972044 | 0.865251 | 0.370263 | 0.207617 | 0.490622 | 0.128018 | 0.973084 | 0.769352 | 0.780947 | 0.258148 | 0.812933 | 0.83484 | 0.432996 | 0.511692 | 0.611335 | 0.877168 | 0.742428 |
---|
3 | 0.816104 | 0.0311551 | 0.5683 | 0.704495 | 0.549385 | 0.471999 | 0.543525 | 0.878611 | 0.0553813 | 0.433413 | 0.721113 | 0.90562 | 0.822592 | 0.101155 | 0.215981 | 0.0727627 | 0.579711 | 0.579151 | 0.755325 | 0.632599 | 0.676199 | 0.921829 | 0.749605 | 0.981136 | 0.10249 | 0.953556 | 0.50945 | 0.646269 | 0.396988 | 0.932969 | 0.506011 | 0.387092 | 0.513568 | 0.548799 | 0.117301 | 0.749199 | 0.161664 | 0.507067 | 0.982289 | 0.0554118 | 0.0723973 | 0.296174 | 0.2617 | 0.0464874 | 0.0168145 | 0.938944 | 0.731108 | 0.464276 | 0.0282041 | 0.112549 | 0.745749 | 0.432314 | 0.693835 | 0.956663 | 0.177674 | 0.874948 | 0.587931 | 0.834267 | 0.751571 | 0.871607 | 0.118688 | 0.895995 | 0.688151 | 0.931742 | 0.0470647 | 0.356565 | 0.648014 | 0.314232 | 0.90112 | 0.837802 | 0.419339 | 0.126734 | 0.00268467 | 0.843003 | 0.505144 | 0.5602 | 0.0985052 | 0.861954 | 0.860644 | 0.204682 | 0.634035 | 0.553771 | 0.220832 | 0.416234 | 0.900075 | 0.095238 | 0.323409 | 0.461687 | 0.099201 | 0.043433 | 0.690487 |
---|
4 | 0.0294096 | 0.602984 | 0.357492 | 0.588966 | 0.100176 | 0.163219 | 0.3719 | 0.0634015 | 0.57308 | 0.795895 | 0.89425 | 0.0849626 | 0.763744 | 0.239118 | 0.722183 | 0.856142 | 0.180864 | 0.581203 | 0.3304 | 0.520827 | 0.0140902 | 0.402648 | 0.492288 | 0.0419267 | 0.565855 | 0.185707 | 0.912092 | 0.276022 | 0.687733 | 0.152818 | 0.596199 | 0.246881 | 0.624406 | 0.86924 | 0.60933 | 0.662877 | 0.97319 | 0.112181 | 0.417401 | 0.384564 | 0.824204 | 0.936204 | 0.710395 | 0.962075 | 0.429801 | 0.781552 | 0.110724 | 0.238736 | 0.239962 | 0.805589 | 0.45364 | 0.827796 | 0.0670384 | 0.651466 | 0.136 | 0.596721 | 0.0877139 | 0.147265 | 0.621543 | 0.185766 | 0.935794 | 0.940496 | 0.041551 | 0.380434 | 0.804594 | 0.463235 | 0.614597 | 0.995259 | 0.853942 | 0.909778 | 0.677835 | 0.136624 | 0.0101655 | 0.313183 | 0.793315 | 0.640075 | 0.802004 | 0.355651 | 0.797319 | 0.811142 | 0.8665 | 0.440861 | 0.110327 | 0.591043 | 0.382544 | 0.345257 | 0.506768 | 0.344783 | 0.0190208 | 0.371157 | 0.885855 |
---|
5 | 0.735294 | 0.518496 | 0.867751 | 0.944726 | 0.304592 | 0.341913 | 0.681918 | 0.0712981 | 0.999297 | 0.8393 | 0.949566 | 0.461614 | 0.249693 | 0.5351 | 0.908043 | 0.197059 | 0.688323 | 0.200507 | 0.0450562 | 0.70558 | 0.770484 | 0.0854422 | 0.843648 | 0.641052 | 0.408662 | 0.479613 | 0.47507 | 0.826897 | 0.168435 | 0.433382 | 0.502158 | 0.274056 | 0.61335 | 0.89971 | 0.717724 | 0.94818 | 0.375389 | 0.953553 | 0.455064 | 0.483564 | 0.0675189 | 0.274972 | 0.0285296 | 0.683966 | 0.192759 | 0.263576 | 0.531961 | 0.227704 | 0.102302 | 0.786472 | 0.028373 | 0.0335419 | 0.90208 | 0.493996 | 0.860681 | 0.513063 | 0.0637473 | 0.185034 | 0.940987 | 0.029071 | 0.715109 | 0.199015 | 0.430876 | 0.038609 | 0.843466 | 0.554907 | 0.130222 | 0.25381 | 0.927273 | 0.7202 | 0.45438 | 0.968065 | 0.244117 | 0.964951 | 0.59948 | 0.0335906 | 0.0874323 | 0.919734 | 0.57089 | 0.541353 | 0.743658 | 0.953108 | 0.601884 | 0.170292 | 0.790372 | 0.0300106 | 0.650849 | 0.691083 | 0.672981 | 0.211433 | 0.31572 |
---|
6 | 0.104985 | 0.748484 | 0.270928 | 0.726806 | 0.242353 | 0.424651 | 0.89167 | 0.0989472 | 0.63658 | 0.451663 | 0.58207 | 0.37181 | 0.784128 | 0.881445 | 0.522263 | 0.843995 | 0.647146 | 0.510528 | 0.760864 | 0.176008 | 0.604682 | 0.529928 | 0.868341 | 0.956101 | 0.636343 | 0.346888 | 0.383413 | 0.124892 | 0.137329 | 0.953385 | 0.019473 | 0.918218 | 0.217521 | 0.454126 | 0.216184 | 0.128865 | 0.71009 | 0.202403 | 0.786343 | 0.376344 | 0.876184 | 0.173444 | 0.543272 | 0.569241 | 0.217485 | 0.54297 | 0.794895 | 0.197436 | 0.405965 | 0.218483 | 0.621621 | 0.588901 | 0.55798 | 0.758998 | 0.0190227 | 0.0141301 | 0.262226 | 0.526782 | 0.897284 | 0.160378 | 0.882961 | 0.908824 | 0.288973 | 0.995771 | 0.217869 | 0.155613 | 0.14274 | 0.398137 | 0.715217 | 0.671268 | 0.309147 | 0.0980875 | 0.0506852 | 0.705388 | 0.856581 | 0.490066 | 0.868483 | 0.923126 | 0.134035 | 0.0515882 | 0.745122 | 0.967005 | 0.56791 | 0.478049 | 0.0906394 | 0.124289 | 0.333455 | 0.133029 | 0.785799 | 0.00307311 | 0.0231871 |
---|
7 | 0.122963 | 0.299071 | 0.398845 | 0.595742 | 0.897918 | 0.767277 | 0.528869 | 0.0952854 | 0.876014 | 0.91985 | 0.274228 | 0.235176 | 0.155168 | 0.897107 | 0.844195 | 0.523281 | 0.695864 | 0.151124 | 0.201065 | 0.433001 | 0.967306 | 0.277211 | 0.0633977 | 0.559057 | 0.803475 | 0.955828 | 0.418065 | 0.176816 | 0.452077 | 0.212605 | 0.359162 | 0.872456 | 0.954056 | 0.00969582 | 0.654253 | 0.451168 | 0.936156 | 0.83678 | 0.352908 | 0.355679 | 0.351366 | 0.6976 | 0.182677 | 0.582376 | 0.446669 | 0.468831 | 0.986564 | 0.787202 | 0.0207218 | 0.830462 | 0.528791 | 0.649264 | 0.462557 | 0.495886 | 0.331946 | 0.207492 | 0.147196 | 0.413481 | 0.384668 | 0.289411 | 0.671321 | 0.0849257 | 0.822076 | 0.691735 | 0.00201329 | 0.986001 | 0.255116 | 0.62795 | 0.439429 | 0.855033 | 0.0392876 | 0.533968 | 0.954528 | 0.621568 | 0.554224 | 0.245084 | 0.430127 | 0.0393655 | 0.861053 | 0.79146 | 0.19431 | 0.130647 | 0.320469 | 0.79884 | 0.508452 | 0.615816 | 0.620154 | 0.59971 | 0.95422 | 0.175857 | 0.0561981 |
---|
8 | 0.285565 | 0.860297 | 0.761779 | 0.493953 | 0.352795 | 0.0978239 | 0.33335 | 0.271201 | 0.925524 | 0.917375 | 0.576162 | 0.268133 | 0.125511 | 0.490454 | 0.344244 | 0.701716 | 0.974315 | 0.627148 | 0.719798 | 0.897083 | 0.355013 | 0.525964 | 0.1293 | 0.469946 | 0.220079 | 0.363505 | 0.511436 | 0.121252 | 0.22358 | 0.913205 | 0.00264764 | 0.68959 | 0.780974 | 0.0783856 | 0.796506 | 0.110054 | 0.368587 | 0.193997 | 0.29098 | 0.868428 | 0.786319 | 0.545261 | 0.919114 | 0.76211 | 0.999873 | 0.357683 | 0.432689 | 0.663905 | 0.100488 | 0.951057 | 0.516271 | 0.483088 | 0.94885 | 0.202503 | 0.303644 | 0.891888 | 0.795852 | 0.607904 | 0.85376 | 0.103206 | 0.714224 | 0.646276 | 0.320943 | 0.0962626 | 0.251722 | 0.732607 | 0.793814 | 0.72889 | 0.432618 | 0.425725 | 0.509217 | 0.0901841 | 0.0428452 | 0.662801 | 0.20999 | 0.78545 | 0.417713 | 0.587398 | 0.29783 | 0.443977 | 0.657121 | 0.614854 | 0.171036 | 0.333022 | 0.600891 | 0.690445 | 0.711591 | 0.353383 | 0.872337 | 0.56693 | 0.650327 |
---|
9 | 0.699475 | 0.526547 | 0.48827 | 0.833843 | 0.398902 | 0.34097 | 0.434416 | 0.737417 | 0.601661 | 0.948748 | 0.143168 | 0.39857 | 0.274069 | 0.441589 | 0.907523 | 0.776778 | 0.0880758 | 0.563284 | 0.035741 | 0.965501 | 0.158115 | 0.935467 | 0.0107191 | 0.794095 | 0.306485 | 0.563838 | 0.234564 | 0.470866 | 0.545337 | 0.882925 | 0.652653 | 0.484142 | 0.0444346 | 0.926649 | 0.0893685 | 0.149006 | 0.196885 | 0.902177 | 0.234035 | 0.518022 | 0.0508096 | 0.734057 | 0.71099 | 0.587393 | 0.899463 | 0.145148 | 0.130772 | 0.618149 | 0.231209 | 0.546901 | 0.536324 | 0.381786 | 0.110766 | 0.535949 | 0.188301 | 0.523542 | 0.609068 | 0.691422 | 0.785489 | 0.2771 | 0.198504 | 0.149313 | 0.283498 | 0.0928673 | 0.455494 | 0.017388 | 0.633155 | 0.669383 | 0.573861 | 0.747748 | 0.855555 | 0.859311 | 0.343575 | 0.326334 | 0.704096 | 0.752342 | 0.644027 | 0.0584409 | 0.374489 | 0.468853 | 0.301344 | 0.859881 | 0.353032 | 0.364108 | 0.712382 | 0.0796823 | 0.639522 | 0.799812 | 0.765472 | 0.449926 | 0.00834814 |
---|
10 | 0.166966 | 0.39248 | 0.927411 | 0.375408 | 0.948402 | 0.74614 | 0.165905 | 0.60924 | 0.658242 | 0.405263 | 0.250541 | 0.250369 | 0.528383 | 0.882483 | 0.669635 | 0.468719 | 0.211685 | 0.571305 | 0.941935 | 0.0399602 | 0.949572 | 0.884902 | 0.874846 | 0.935472 | 0.753027 | 0.222745 | 0.072964 | 0.446266 | 0.665754 | 0.494479 | 0.594426 | 0.22792 | 0.304495 | 0.32287 | 0.846079 | 0.635526 | 0.176167 | 0.335138 | 0.528078 | 0.744476 | 0.369796 | 0.541871 | 0.638983 | 0.512564 | 0.278364 | 0.379862 | 0.981846 | 0.310789 | 0.92563 | 0.345531 | 0.0565916 | 0.0972791 | 0.357956 | 0.979057 | 0.987561 | 0.80529 | 0.467411 | 0.329724 | 0.897648 | 0.860602 | 0.149986 | 0.480947 | 0.835866 | 0.561121 | 0.128314 | 0.962059 | 0.10865 | 0.0481761 | 0.842291 | 0.557756 | 0.290992 | 0.72197 | 0.215849 | 0.784464 | 0.480755 | 0.325451 | 0.00124807 | 0.255167 | 0.651753 | 0.861789 | 0.654518 | 0.395987 | 0.686211 | 0.201202 | 0.807569 | 0.966599 | 0.858589 | 0.0542331 | 0.803382 | 0.153509 | 0.349456 |
---|
11 | 0.416885 | 0.786112 | 0.892138 | 0.603528 | 0.400857 | 0.488044 | 0.805061 | 0.815509 | 0.949073 | 0.0997092 | 0.689906 | 0.471251 | 0.0254083 | 0.939511 | 0.0381978 | 0.87884 | 0.299637 | 0.999647 | 0.309296 | 0.0201042 | 0.514313 | 0.556854 | 0.213665 | 0.125529 | 0.644093 | 0.776143 | 0.428217 | 0.410361 | 0.31759 | 0.187317 | 0.271677 | 0.433429 | 0.0915086 | 0.690614 | 0.304914 | 0.614119 | 0.017071 | 0.432537 | 0.241412 | 0.571407 | 0.706505 | 0.053553 | 0.229129 | 0.410833 | 0.300025 | 0.366573 | 0.50443 | 0.815611 | 0.407297 | 0.0882654 | 0.221459 | 0.947458 | 0.161545 | 0.908259 | 0.491513 | 0.212744 | 0.0616568 | 0.645213 | 0.454906 | 0.37159 | 0.149114 | 0.193823 | 0.508172 | 0.0199597 | 0.120865 | 0.145493 | 0.0798437 | 0.280795 | 0.329265 | 0.475399 | 0.340869 | 0.895608 | 0.563804 | 0.258064 | 0.121789 | 0.921411 | 0.0950939 | 0.580073 | 0.758349 | 0.625454 | 0.752884 | 0.802718 | 0.920175 | 0.717342 | 0.719859 | 0.424176 | 0.837297 | 0.470277 | 0.980379 | 0.757167 | 0.152447 |
---|
12 | 0.754568 | 0.252141 | 0.125841 | 0.743868 | 0.322289 | 0.248748 | 0.233131 | 0.901151 | 0.541749 | 0.451507 | 0.743821 | 0.115309 | 0.0533659 | 0.224579 | 0.427137 | 0.732949 | 0.0139583 | 0.518952 | 0.524448 | 0.708239 | 0.680834 | 0.503947 | 0.297688 | 0.758444 | 0.155056 | 0.725885 | 0.560022 | 0.878697 | 0.788712 | 0.0911159 | 0.351682 | 0.15456 | 0.16106 | 0.938585 | 0.512901 | 0.667643 | 0.154321 | 0.948208 | 0.685353 | 0.400909 | 0.235272 | 0.137961 | 0.634572 | 0.305139 | 0.468947 | 0.783277 | 0.160702 | 0.801933 | 0.270504 | 0.54568 | 0.740096 | 0.453297 | 0.479879 | 0.445893 | 0.553824 | 0.624774 | 0.387326 | 0.522014 | 0.425619 | 0.728292 | 0.566535 | 0.823266 | 0.188184 | 0.954409 | 0.692347 | 0.723116 | 0.334068 | 0.156718 | 0.050776 | 0.649684 | 0.523817 | 0.951366 | 0.981999 | 0.131595 | 0.63162 | 0.0457824 | 0.788564 | 0.838033 | 0.610428 | 0.849241 | 0.14634 | 0.400393 | 0.629283 | 0.704738 | 0.11485 | 0.202387 | 0.0125521 | 0.0500447 | 0.952813 | 0.103388 | 0.916409 |
---|
13 | 0.359805 | 0.70869 | 0.180921 | 0.318276 | 0.696253 | 0.780391 | 0.395035 | 0.494216 | 0.816286 | 0.928157 | 0.0477657 | 0.673665 | 0.809989 | 0.160694 | 0.0990286 | 0.627871 | 0.501307 | 0.460785 | 0.414588 | 0.911045 | 0.103021 | 0.654851 | 0.588015 | 0.816675 | 0.229959 | 0.996814 | 0.390815 | 0.289545 | 0.69559 | 0.747203 | 0.676633 | 0.887763 | 0.00891286 | 0.530944 | 0.541194 | 0.354979 | 0.953086 | 0.148502 | 0.560864 | 0.475162 | 0.969971 | 0.00743405 | 0.11161 | 0.704805 | 0.205323 | 0.545716 | 0.756746 | 0.494702 | 0.725381 | 0.68307 | 0.368649 | 0.815366 | 0.744184 | 0.416854 | 0.113417 | 0.0161777 | 0.237871 | 0.328869 | 0.388594 | 0.827495 | 0.525308 | 0.673568 | 0.0787224 | 0.146568 | 0.485066 | 0.877684 | 0.416192 | 0.571045 | 0.182155 | 0.134323 | 0.150976 | 0.742043 | 0.331399 | 0.441721 | 0.258435 | 0.179365 | 0.547326 | 0.0396702 | 0.901111 | 0.875182 | 0.0940496 | 0.135748 | 0.815906 | 0.318638 | 0.467641 | 0.350695 | 0.438721 | 0.0306896 | 0.826348 | 0.188778 | 0.778235 |
---|
14 | 0.256697 | 0.442184 | 0.882668 | 0.295139 | 0.661251 | 0.345927 | 0.00618738 | 0.839614 | 0.126678 | 0.367896 | 0.905565 | 0.992191 | 0.814239 | 0.891956 | 0.945523 | 0.105662 | 0.144674 | 0.742911 | 0.0199684 | 0.600905 | 0.938825 | 0.637899 | 0.574996 | 0.959144 | 0.289137 | 0.05706 | 0.534704 | 0.859948 | 0.792136 | 0.699435 | 0.452928 | 0.00628875 | 0.646328 | 0.00625986 | 0.0948943 | 0.509564 | 0.831057 | 0.150589 | 0.99755 | 0.825637 | 0.359116 | 0.25917 | 0.184987 | 0.246293 | 0.678959 | 0.246704 | 0.262669 | 0.673208 | 0.312037 | 0.32152 | 0.568042 | 0.0513086 | 0.404207 | 0.882484 | 0.544177 | 0.857876 | 0.537279 | 0.120186 | 0.0197411 | 0.134976 | 0.490367 | 0.915333 | 0.267332 | 0.608344 | 0.702321 | 0.818114 | 0.128523 | 0.923254 | 0.198797 | 0.36647 | 0.690348 | 0.441621 | 0.0754382 | 0.827973 | 0.287905 | 0.151659 | 0.908283 | 0.622234 | 0.924394 | 0.437373 | 0.249388 | 0.343454 | 0.0902369 | 0.95358 | 0.5275 | 0.490004 | 0.448121 | 0.434673 | 0.703803 | 0.398894 | 0.106829 |
---|
15 | 0.785111 | 0.0287701 | 0.723653 | 0.420017 | 0.369392 | 0.12533 | 0.613561 | 0.353583 | 0.0484257 | 0.48146 | 0.00590497 | 0.403021 | 0.928766 | 0.936654 | 0.0148183 | 0.541617 | 0.0887707 | 0.65463 | 0.112795 | 0.819853 | 0.153062 | 0.753844 | 0.157142 | 0.801286 | 0.579688 | 0.0908388 | 0.356038 | 0.744643 | 0.250392 | 0.908347 | 0.723184 | 0.680819 | 0.255666 | 0.582374 | 0.159995 | 0.0551349 | 0.25848 | 0.956404 | 0.106678 | 0.578684 | 0.819128 | 0.835611 | 0.164239 | 0.352778 | 0.260887 | 0.340043 | 0.359265 | 0.753189 | 0.691452 | 0.465358 | 0.294545 | 0.101817 | 0.408753 | 0.197066 | 0.891221 | 0.449196 | 0.353885 | 0.817879 | 0.302634 | 0.781319 | 0.878146 | 0.223373 | 0.341864 | 0.67 | 0.818568 | 0.45743 | 0.0106534 | 0.109349 | 0.755255 | 0.554298 | 0.0187193 | 0.470433 | 0.747251 | 0.883222 | 0.0343146 | 0.0722684 | 0.82199 | 0.213906 | 0.916131 | 0.43422 | 0.686634 | 0.0813054 | 0.515826 | 0.441113 | 0.369452 | 0.468456 | 0.700418 | 0.199584 | 0.790778 | 0.876855 | 0.197238 |
---|
16 | 0.119175 | 0.997407 | 0.600071 | 0.150134 | 0.294867 | 0.232884 | 0.0359352 | 0.0405297 | 0.956944 | 0.206612 | 0.891109 | 0.536923 | 0.444805 | 0.0592091 | 0.349784 | 0.041129 | 0.204062 | 0.356162 | 0.427058 | 0.436655 | 0.323965 | 0.405204 | 0.243517 | 0.0983356 | 0.707926 | 0.626772 | 0.397375 | 0.103048 | 0.493754 | 0.0512734 | 0.284098 | 0.905525 | 0.2557 | 0.492156 | 0.217349 | 0.72758 | 0.45774 | 0.757575 | 0.504359 | 0.111195 | 0.144946 | 0.63563 | 0.640765 | 0.473529 | 0.888842 | 0.0662461 | 0.0669501 | 0.0937819 | 0.284774 | 0.388454 | 0.315083 | 0.705965 | 0.110245 | 0.545334 | 0.328949 | 0.953212 | 0.869523 | 0.883671 | 0.789061 | 0.538512 | 0.17662 | 0.679105 | 0.756235 | 0.700965 | 0.714096 | 0.773286 | 0.838677 | 0.194138 | 0.189236 | 0.801607 | 0.928073 | 0.21181 | 0.59794 | 0.939369 | 0.6301 | 0.428423 | 0.400726 | 0.392068 | 0.276225 | 0.647371 | 0.204536 | 0.803716 | 0.756323 | 0.630274 | 0.981307 | 0.669312 | 0.731045 | 0.686936 | 0.830185 | 0.225691 | 0.718969 |
---|
17 | 0.767517 | 0.0917449 | 0.98261 | 0.155235 | 0.779822 | 0.697622 | 0.276395 | 0.0334867 | 0.211488 | 0.656095 | 0.271849 | 0.921427 | 0.704899 | 0.125585 | 0.677568 | 0.297045 | 0.438671 | 0.141978 | 0.197653 | 0.14572 | 0.901121 | 0.826308 | 0.254755 | 0.963487 | 0.69993 | 0.799628 | 0.384087 | 0.694298 | 0.505828 | 0.325642 | 0.518123 | 0.386466 | 0.86465 | 0.72836 | 0.282926 | 0.6356 | 0.24907 | 0.705237 | 0.185539 | 0.739488 | 0.316557 | 0.990732 | 0.291909 | 0.919134 | 0.609385 | 0.741514 | 0.100009 | 0.535735 | 0.198862 | 0.882838 | 0.497125 | 0.995807 | 0.0103457 | 0.820863 | 0.626746 | 0.296194 | 0.96574 | 0.655598 | 0.436826 | 0.163791 | 0.659449 | 0.36553 | 0.82149 | 0.976503 | 0.88755 | 0.125286 | 0.700833 | 0.946964 | 0.0848134 | 0.196714 | 0.937769 | 0.652907 | 0.619412 | 0.722275 | 0.566419 | 0.137032 | 0.421072 | 0.883118 | 0.076193 | 0.924065 | 0.742058 | 0.695228 | 0.692421 | 0.814906 | 0.0784302 | 0.395074 | 0.0195594 | 0.0644042 | 0.192134 | 0.226081 | 0.305123 |
---|
18 | 0.0912103 | 0.858123 | 0.523157 | 0.341457 | 0.0188369 | 0.654098 | 0.713415 | 0.129512 | 0.111948 | 0.459208 | 0.183655 | 0.920433 | 0.997478 | 0.650843 | 0.0416978 | 0.983741 | 0.0409416 | 0.681168 | 0.652302 | 0.380478 | 0.182672 | 0.48964 | 0.183932 | 0.779065 | 0.531586 | 0.731207 | 0.546016 | 0.209642 | 0.388015 | 0.707885 | 0.401469 | 0.414996 | 0.34144 | 0.123668 | 0.97512 | 0.600568 | 0.840934 | 0.0844493 | 0.83362 | 0.0164664 | 0.643974 | 0.370158 | 0.36341 | 0.49419 | 0.134667 | 0.111654 | 0.0603724 | 0.0192727 | 0.817629 | 0.337511 | 0.282739 | 0.0427535 | 0.428996 | 0.991509 | 0.699613 | 0.942149 | 0.979018 | 0.774627 | 0.263582 | 0.0343829 | 0.691345 | 0.529715 | 0.3491 | 0.568308 | 0.445266 | 0.860663 | 0.737898 | 0.158701 | 0.0853444 | 0.671737 | 0.778676 | 0.616331 | 0.605166 | 0.137921 | 0.49265 | 0.084879 | 0.490077 | 0.840441 | 0.805008 | 0.577131 | 0.164546 | 0.585887 | 0.712441 | 0.0406718 | 0.813799 | 0.597728 | 0.31394 | 0.493442 | 0.755567 | 0.148272 | 0.780615 |
---|
19 | 0.476591 | 0.800718 | 0.11265 | 0.283065 | 0.685996 | 0.948567 | 0.922045 | 0.393786 | 0.235692 | 0.923032 | 0.389098 | 0.305808 | 0.0757194 | 0.643833 | 0.508898 | 0.909184 | 0.289196 | 0.449011 | 0.449166 | 0.2876 | 0.0347074 | 0.44147 | 0.103866 | 0.526855 | 0.983031 | 0.0932253 | 0.537359 | 0.31136 | 0.347529 | 0.379231 | 0.224118 | 0.668162 | 0.128517 | 0.539799 | 0.172349 | 0.435991 | 0.180826 | 0.104718 | 0.932985 | 0.0209317 | 0.286929 | 0.644148 | 0.345779 | 0.723341 | 0.675401 | 0.220316 | 0.0820871 | 0.321589 | 0.693457 | 0.409098 | 0.044919 | 0.982601 | 0.902514 | 0.812016 | 0.530556 | 0.0802128 | 0.350024 | 0.332135 | 0.726545 | 0.730135 | 0.874499 | 0.942222 | 0.125513 | 0.0707746 | 0.174651 | 0.713836 | 0.517898 | 0.508667 | 0.0270955 | 0.958009 | 0.109962 | 0.351123 | 0.926009 | 0.952153 | 0.729818 | 0.58579 | 0.235482 | 0.247183 | 0.196109 | 0.363625 | 0.047663 | 0.190607 | 0.53017 | 0.945846 | 0.750075 | 0.236835 | 0.745386 | 0.0186635 | 0.963414 | 0.502514 | 0.232607 |
---|
20 | 0.50936 | 0.0677106 | 0.646342 | 0.529543 | 0.906977 | 0.680919 | 0.854906 | 0.349826 | 0.108508 | 0.152323 | 0.529554 | 0.375108 | 0.449717 | 0.536842 | 0.831645 | 0.809305 | 0.388969 | 0.924636 | 0.566278 | 0.812893 | 0.30783 | 0.923731 | 0.00478722 | 0.26212 | 0.449992 | 0.0998924 | 0.610672 | 0.55376 | 0.70763 | 0.230976 | 0.524448 | 0.680562 | 0.0315408 | 0.957406 | 0.651823 | 0.00561359 | 0.903019 | 0.617892 | 0.0853425 | 0.53347 | 0.82833 | 0.854056 | 0.633794 | 0.339436 | 0.291664 | 0.750913 | 0.345843 | 0.243037 | 0.185055 | 0.0380478 | 0.184534 | 0.261817 | 0.1994 | 0.323532 | 0.95045 | 0.632434 | 0.566106 | 0.874069 | 0.499607 | 0.0521806 | 0.528636 | 0.526479 | 0.134858 | 0.879343 | 0.880208 | 0.953152 | 0.619533 | 0.554013 | 0.32116 | 0.402539 | 0.230132 | 0.914399 | 0.849661 | 0.706032 | 0.999066 | 0.709593 | 0.806477 | 0.579369 | 0.237576 | 0.872421 | 0.917755 | 0.238283 | 0.624868 | 0.670813 | 0.0892321 | 0.100787 | 0.528799 | 0.563496 | 0.422123 | 0.235726 | 0.744823 |
---|
21 | 0.307134 | 0.93039 | 0.547991 | 0.282763 | 0.494457 | 0.318209 | 0.669773 | 0.853721 | 0.850005 | 0.715816 | 0.0337688 | 0.804402 | 0.893978 | 0.893904 | 0.312627 | 0.669111 | 0.99144 | 0.947155 | 0.639849 | 0.483649 | 0.316967 | 0.471222 | 0.178188 | 0.0538918 | 0.0673325 | 0.819659 | 0.213087 | 0.902479 | 0.146789 | 0.956968 | 0.437638 | 0.15399 | 0.551659 | 0.188814 | 0.584219 | 0.25859 | 0.497828 | 0.929091 | 0.629446 | 0.426062 | 0.353392 | 0.111176 | 0.370121 | 0.6948 | 0.705744 | 0.199877 | 0.375927 | 0.306254 | 0.0172798 | 0.326679 | 0.0677236 | 0.774519 | 0.0455985 | 0.353574 | 0.187917 | 0.623197 | 0.208424 | 0.403822 | 0.840184 | 0.222461 | 0.0881465 | 0.931478 | 0.853111 | 0.397111 | 0.35587 | 0.432234 | 0.0661484 | 0.539728 | 0.656949 | 0.524179 | 0.988885 | 0.450697 | 0.00364027 | 0.205573 | 0.662258 | 0.737181 | 0.977659 | 0.961869 | 0.0908337 | 0.583425 | 0.337415 | 0.0922778 | 0.398518 | 0.557303 | 0.866034 | 0.825382 | 0.334265 | 0.0775024 | 0.634409 | 0.0882148 | 0.951536 |
---|
22 | 0.0748494 | 0.842819 | 0.174397 | 0.585027 | 0.647524 | 0.361121 | 0.457783 | 0.197152 | 0.209876 | 0.466329 | 0.406155 | 0.152351 | 0.505483 | 0.456496 | 0.283564 | 0.143957 | 0.116476 | 0.86016 | 0.64683 | 0.210622 | 0.826885 | 0.300417 | 0.71228 | 0.904871 | 0.696229 | 0.72267 | 0.174136 | 0.23003 | 0.741294 | 0.0815247 | 0.979206 | 0.742809 | 0.878433 | 0.0525933 | 0.950189 | 0.0190811 | 0.933998 | 0.770685 | 0.86052 | 0.865665 | 0.297431 | 0.795359 | 0.645038 | 0.712073 | 0.634281 | 0.742885 | 0.961849 | 0.885925 | 0.248304 | 0.453857 | 0.997385 | 0.383937 | 0.547439 | 0.781781 | 0.712037 | 0.348259 | 0.081833 | 0.38983 | 0.222769 | 0.786352 | 0.11826 | 0.995367 | 0.414437 | 0.31492 | 0.495709 | 0.617816 | 0.139765 | 0.167134 | 0.909815 | 0.978409 | 0.559653 | 0.264359 | 0.310432 | 0.857375 | 0.714564 | 0.554775 | 0.707106 | 0.0868333 | 0.37476 | 0.405064 | 0.934688 | 0.210175 | 0.315303 | 0.10453 | 0.709695 | 0.250576 | 0.988624 | 0.221699 | 0.251387 | 0.736891 | 0.821235 |
---|
23 | 0.910248 | 0.974573 | 0.262119 | 0.972754 | 0.831086 | 0.884634 | 0.439225 | 0.385293 | 0.853531 | 0.639563 | 0.855535 | 0.333158 | 0.597535 | 0.00115976 | 0.124596 | 0.301587 | 0.143348 | 0.488919 | 0.2388 | 0.58854 | 0.267387 | 0.380235 | 0.674924 | 0.518806 | 0.759586 | 0.756648 | 0.487546 | 0.435687 | 0.0224561 | 0.0792966 | 0.52714 | 0.711805 | 0.378414 | 0.519893 | 0.713293 | 0.290639 | 0.572989 | 0.0323744 | 0.332728 | 0.432508 | 0.963921 | 0.73476 | 0.461187 | 0.797265 | 0.907193 | 0.922693 | 0.534732 | 0.303427 | 0.253601 | 0.221667 | 0.888425 | 0.157442 | 0.68488 | 0.407556 | 0.362209 | 0.938802 | 0.8389 | 0.0255732 | 0.561258 | 0.499792 | 0.815692 | 0.408309 | 0.00851013 | 0.249499 | 0.709797 | 0.551949 | 0.972655 | 0.158132 | 0.215669 | 0.287993 | 0.684705 | 0.976339 | 0.472291 | 0.629154 | 0.515939 | 0.237566 | 0.0324053 | 0.219753 | 0.584838 | 0.596525 | 0.700229 | 0.170792 | 0.587667 | 0.223331 | 0.810288 | 0.280452 | 0.281214 | 0.968538 | 0.625783 | 0.9265 | 0.987795 |
---|
24 | 0.256616 | 0.810693 | 0.049729 | 0.69182 | 0.960388 | 0.971199 | 0.354185 | 0.553695 | 0.915114 | 0.53437 | 0.483389 | 0.420419 | 0.931358 | 0.846367 | 0.0833473 | 0.882511 | 0.0889344 | 0.105441 | 0.898072 | 0.618268 | 0.322621 | 0.935854 | 0.513055 | 0.578302 | 0.556542 | 0.635414 | 0.920086 | 0.313886 | 0.077584 | 0.410661 | 0.536799 | 0.842727 | 0.323424 | 0.0979703 | 0.643813 | 0.739761 | 0.367318 | 0.498612 | 0.0349703 | 0.289825 | 0.505065 | 0.622601 | 0.238781 | 0.800493 | 0.834235 | 0.707748 | 0.254695 | 0.55248 | 0.900382 | 0.0516816 | 0.0722662 | 0.670037 | 0.528175 | 0.838406 | 0.418662 | 0.266291 | 0.581613 | 0.610446 | 0.841307 | 0.673156 | 0.705877 | 0.846345 | 0.8071 | 0.484362 | 0.00264264 | 0.376861 | 0.00286258 | 0.813644 | 0.0601934 | 0.401146 | 0.455901 | 0.412068 | 0.205892 | 0.692938 | 0.761514 | 0.608291 | 0.165913 | 0.70564 | 0.456988 | 0.752319 | 0.762804 | 0.552292 | 0.596155 | 0.306926 | 0.407184 | 0.745572 | 0.0312873 | 0.52841 | 0.918759 | 0.689452 | 0.14905 |
---|
⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|cccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & \\\\\n",
+ "\\begin{tabular}{r|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20 & x21 & x22 & x23 & x24 & x25 & x26 & x27 & x28 & x29 & x30 & x31 & x32 & x33 & x34 & x35 & x36 & x37 & x38 & x39 & x40 & x41 & x42 & x43 & x44 & x45 & x46 & x47 & x48 & x49 & x50 & x51 & x52 & x53 & x54 & x55 & x56 & x57 & x58 & x59 & x60 & x61 & x62 & x63 & x64 & x65 & x66 & x67 & x68 & x69 & x70 & x71 & x72 & x73 & x74 & x75 & x76 & x77 & x78 & x79 & x80 & x81 & x82 & x83 & x84 & x85 & x86 & x87 & x88 & x89 & x90 & x91 & \\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & $\\dots$ \\\\\n",
- "\t2 & 0.774187 & 0.356867 & 0.885526 & 0.11275 & 0.780669 & 0.593082 & 0.939199 & $\\dots$ \\\\\n",
- "\t3 & 0.609714 & 0.288531 & 0.355283 & 0.480804 & 0.593935 & 0.893138 & 0.99899 & $\\dots$ \\\\\n",
- "\t4 & 0.694783 & 0.570324 & 0.0789985 & 0.818004 & 0.554942 & 0.0996372 & 0.861696 & $\\dots$ \\\\\n",
- "\t5 & 0.791302 & 0.905282 & 0.117797 & 0.406855 & 0.681548 & 0.819496 & 0.0545339 & $\\dots$ \\\\\n",
- "\t6 & 0.0740549 & 0.679826 & 0.168822 & 0.518838 & 0.335502 & 0.565356 & 0.819869 & $\\dots$ \\\\\n",
- "\t7 & 0.621834 & 0.759774 & 0.562538 & 0.560436 & 0.269123 & 0.340253 & 0.532622 & $\\dots$ \\\\\n",
- "\t8 & 0.1039 & 0.919697 & 0.418945 & 0.813356 & 0.716439 & 0.545716 & 0.783745 & $\\dots$ \\\\\n",
- "\t9 & 0.954089 & 0.808411 & 0.0782112 & 0.154967 & 0.730512 & 0.57385 & 0.0323516 & $\\dots$ \\\\\n",
- "\t10 & 0.484041 & 0.0670306 & 0.568193 & 0.236212 & 0.648555 & 0.282126 & 0.819354 & $\\dots$ \\\\\n",
- "\t11 & 0.610301 & 0.553308 & 0.464705 & 0.2572 & 0.327319 & 0.928381 & 0.677589 & $\\dots$ \\\\\n",
- "\t12 & 0.671759 & 0.0358856 & 0.662134 & 0.52969 & 0.199269 & 0.884487 & 0.724972 & $\\dots$ \\\\\n",
- "\t13 & 0.91624 & 0.985905 & 0.430527 & 0.582321 & 0.635674 & 0.514479 & 0.398271 & $\\dots$ \\\\\n",
- "\t14 & 0.598099 & 0.073587 & 0.811309 & 0.464078 & 0.043888 & 0.449827 & 0.823583 & $\\dots$ \\\\\n",
- "\t15 & 0.108107 & 0.993988 & 0.474159 & 0.553098 & 0.86545 & 0.796407 & 0.58157 & $\\dots$ \\\\\n",
- "\t16 & 0.877811 & 0.234663 & 0.780657 & 0.426909 & 0.572277 & 0.217617 & 0.0395133 & $\\dots$ \\\\\n",
- "\t17 & 0.888415 & 0.28329 & 0.695983 & 0.447424 & 0.0684627 & 0.427942 & 0.117392 & $\\dots$ \\\\\n",
- "\t18 & 0.475098 & 0.708805 & 0.000950559 & 0.620568 & 0.788072 & 0.983017 & 0.487377 & $\\dots$ \\\\\n",
- "\t19 & 0.569646 & 0.530991 & 0.414847 & 0.575629 & 0.735323 & 0.870151 & 0.639259 & $\\dots$ \\\\\n",
- "\t20 & 0.282279 & 0.686557 & 0.759713 & 0.442214 & 0.878599 & 0.771261 & 0.962957 & $\\dots$ \\\\\n",
- "\t21 & 0.621119 & 0.277282 & 0.659875 & 0.770778 & 0.0339144 & 0.901382 & 0.614408 & $\\dots$ \\\\\n",
- "\t22 & 0.00578011 & 0.490124 & 0.158736 & 0.0548638 & 0.547278 & 0.334688 & 0.645415 & $\\dots$ \\\\\n",
- "\t23 & 0.336331 & 0.833446 & 0.990959 & 0.819531 & 0.744571 & 0.894532 & 0.259292 & $\\dots$ \\\\\n",
- "\t24 & 0.818868 & 0.122261 & 0.449699 & 0.997103 & 0.991652 & 0.0650257 & 0.985957 & $\\dots$ \\\\\n",
- "\t25 & 0.751488 & 0.0348871 & 0.442447 & 0.811686 & 0.617123 & 0.600312 & 0.0492889 & $\\dots$ \\\\\n",
- "\t26 & 0.289911 & 0.468436 & 0.296111 & 0.309392 & 0.639848 & 0.228368 & 0.197872 & $\\dots$ \\\\\n",
- "\t27 & 0.246239 & 0.137146 & 0.219654 & 0.631327 & 0.151176 & 0.247654 & 0.591798 & $\\dots$ \\\\\n",
- "\t28 & 0.551238 & 0.785143 & 0.383137 & 0.160481 & 0.575538 & 0.212515 & 0.132044 & $\\dots$ \\\\\n",
- "\t29 & 0.00790199 & 0.243278 & 0.296137 & 0.950761 & 0.507507 & 0.895889 & 0.582313 & $\\dots$ \\\\\n",
- "\t30 & 0.648146 & 0.721099 & 0.987836 & 0.804139 & 0.0243184 & 0.460729 & 0.726689 & $\\dots$ \\\\\n",
- "\t$\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 & 0.192599 & 0.00604097 & 0.581288 & 0.746245 & 0.385509 & 0.355455 & 0.929221 & 0.729291 & 0.778783 & 0.598102 & 0.498373 & 0.0278266 & 0.0462616 & 0.0804585 & 0.486005 & 0.829665 & 0.605489 & 0.922619 & 0.615983 & 0.975146 & 0.218467 & 0.214458 & 0.201525 & 0.388645 & 0.558404 & 0.163782 & 0.437683 & 0.897702 & 0.0696074 & 0.656873 & 0.096646 & 0.604482 & 0.826148 & 0.90222 & 0.213158 & 0.145633 & 0.715524 & 0.821202 & 0.851274 & 0.809465 & 0.938894 & 0.833493 & 0.0128205 & 0.911447 & 0.572925 & 0.492402 & 0.70685 & 0.391735 & 0.379956 & 0.894197 & 0.319608 & 0.282724 & 0.662529 & 0.751371 & 0.0515758 & 0.0554555 & 0.407253 & 0.714758 & 0.930454 & 0.34133 & 0.409226 & 0.0593862 & 0.943453 & 0.396289 & 0.611359 & 0.630375 & 0.0122984 & 0.948587 & 0.395367 & 0.912241 & 0.192444 & $\\dots$ \\\\\n",
+ "\t2 & 0.815357 & 0.7703 & 0.239176 & 0.275748 & 0.183924 & 0.507341 & 0.284418 & 0.28708 & 0.942902 & 0.0887963 & 0.734511 & 0.379075 & 0.434635 & 0.474651 & 0.280465 & 0.180545 & 0.997093 & 0.58534 & 0.404039 & 0.0574775 & 0.829238 & 0.551627 & 0.0609086 & 0.866673 & 0.00203838 & 0.23122 & 0.100199 & 0.542427 & 0.6176 & 0.210846 & 0.169462 & 0.317331 & 0.120702 & 0.522714 & 0.771854 & 0.861075 & 0.607028 & 0.577105 & 0.0263973 & 0.508519 & 0.207115 & 0.260203 & 0.966495 & 0.950563 & 0.23515 & 0.807233 & 0.667959 & 0.469412 & 0.68944 & 0.303178 & 0.916198 & 0.175827 & 0.630586 & 0.617525 & 0.436164 & 0.30317 & 0.0596742 & 0.0982103 & 0.094269 & 0.774918 & 0.74536 & 0.45168 & 0.0928307 & 0.314255 & 0.837564 & 0.507878 & 0.633839 & 0.298748 & 0.501813 & 0.667421 & 0.244102 & 0.99187 & 0.320146 & 0.327764 & 0.0972044 & 0.865251 & 0.370263 & 0.207617 & 0.490622 & 0.128018 & 0.973084 & 0.769352 & 0.780947 & 0.258148 & 0.812933 & 0.83484 & 0.432996 & 0.511692 & 0.611335 & 0.877168 & 0.742428 & $\\dots$ \\\\\n",
+ "\t3 & 0.816104 & 0.0311551 & 0.5683 & 0.704495 & 0.549385 & 0.471999 & 0.543525 & 0.878611 & 0.0553813 & 0.433413 & 0.721113 & 0.90562 & 0.822592 & 0.101155 & 0.215981 & 0.0727627 & 0.579711 & 0.579151 & 0.755325 & 0.632599 & 0.676199 & 0.921829 & 0.749605 & 0.981136 & 0.10249 & 0.953556 & 0.50945 & 0.646269 & 0.396988 & 0.932969 & 0.506011 & 0.387092 & 0.513568 & 0.548799 & 0.117301 & 0.749199 & 0.161664 & 0.507067 & 0.982289 & 0.0554118 & 0.0723973 & 0.296174 & 0.2617 & 0.0464874 & 0.0168145 & 0.938944 & 0.731108 & 0.464276 & 0.0282041 & 0.112549 & 0.745749 & 0.432314 & 0.693835 & 0.956663 & 0.177674 & 0.874948 & 0.587931 & 0.834267 & 0.751571 & 0.871607 & 0.118688 & 0.895995 & 0.688151 & 0.931742 & 0.0470647 & 0.356565 & 0.648014 & 0.314232 & 0.90112 & 0.837802 & 0.419339 & 0.126734 & 0.00268467 & 0.843003 & 0.505144 & 0.5602 & 0.0985052 & 0.861954 & 0.860644 & 0.204682 & 0.634035 & 0.553771 & 0.220832 & 0.416234 & 0.900075 & 0.095238 & 0.323409 & 0.461687 & 0.099201 & 0.043433 & 0.690487 & $\\dots$ \\\\\n",
+ "\t4 & 0.0294096 & 0.602984 & 0.357492 & 0.588966 & 0.100176 & 0.163219 & 0.3719 & 0.0634015 & 0.57308 & 0.795895 & 0.89425 & 0.0849626 & 0.763744 & 0.239118 & 0.722183 & 0.856142 & 0.180864 & 0.581203 & 0.3304 & 0.520827 & 0.0140902 & 0.402648 & 0.492288 & 0.0419267 & 0.565855 & 0.185707 & 0.912092 & 0.276022 & 0.687733 & 0.152818 & 0.596199 & 0.246881 & 0.624406 & 0.86924 & 0.60933 & 0.662877 & 0.97319 & 0.112181 & 0.417401 & 0.384564 & 0.824204 & 0.936204 & 0.710395 & 0.962075 & 0.429801 & 0.781552 & 0.110724 & 0.238736 & 0.239962 & 0.805589 & 0.45364 & 0.827796 & 0.0670384 & 0.651466 & 0.136 & 0.596721 & 0.0877139 & 0.147265 & 0.621543 & 0.185766 & 0.935794 & 0.940496 & 0.041551 & 0.380434 & 0.804594 & 0.463235 & 0.614597 & 0.995259 & 0.853942 & 0.909778 & 0.677835 & 0.136624 & 0.0101655 & 0.313183 & 0.793315 & 0.640075 & 0.802004 & 0.355651 & 0.797319 & 0.811142 & 0.8665 & 0.440861 & 0.110327 & 0.591043 & 0.382544 & 0.345257 & 0.506768 & 0.344783 & 0.0190208 & 0.371157 & 0.885855 & $\\dots$ \\\\\n",
+ "\t5 & 0.735294 & 0.518496 & 0.867751 & 0.944726 & 0.304592 & 0.341913 & 0.681918 & 0.0712981 & 0.999297 & 0.8393 & 0.949566 & 0.461614 & 0.249693 & 0.5351 & 0.908043 & 0.197059 & 0.688323 & 0.200507 & 0.0450562 & 0.70558 & 0.770484 & 0.0854422 & 0.843648 & 0.641052 & 0.408662 & 0.479613 & 0.47507 & 0.826897 & 0.168435 & 0.433382 & 0.502158 & 0.274056 & 0.61335 & 0.89971 & 0.717724 & 0.94818 & 0.375389 & 0.953553 & 0.455064 & 0.483564 & 0.0675189 & 0.274972 & 0.0285296 & 0.683966 & 0.192759 & 0.263576 & 0.531961 & 0.227704 & 0.102302 & 0.786472 & 0.028373 & 0.0335419 & 0.90208 & 0.493996 & 0.860681 & 0.513063 & 0.0637473 & 0.185034 & 0.940987 & 0.029071 & 0.715109 & 0.199015 & 0.430876 & 0.038609 & 0.843466 & 0.554907 & 0.130222 & 0.25381 & 0.927273 & 0.7202 & 0.45438 & 0.968065 & 0.244117 & 0.964951 & 0.59948 & 0.0335906 & 0.0874323 & 0.919734 & 0.57089 & 0.541353 & 0.743658 & 0.953108 & 0.601884 & 0.170292 & 0.790372 & 0.0300106 & 0.650849 & 0.691083 & 0.672981 & 0.211433 & 0.31572 & $\\dots$ \\\\\n",
+ "\t6 & 0.104985 & 0.748484 & 0.270928 & 0.726806 & 0.242353 & 0.424651 & 0.89167 & 0.0989472 & 0.63658 & 0.451663 & 0.58207 & 0.37181 & 0.784128 & 0.881445 & 0.522263 & 0.843995 & 0.647146 & 0.510528 & 0.760864 & 0.176008 & 0.604682 & 0.529928 & 0.868341 & 0.956101 & 0.636343 & 0.346888 & 0.383413 & 0.124892 & 0.137329 & 0.953385 & 0.019473 & 0.918218 & 0.217521 & 0.454126 & 0.216184 & 0.128865 & 0.71009 & 0.202403 & 0.786343 & 0.376344 & 0.876184 & 0.173444 & 0.543272 & 0.569241 & 0.217485 & 0.54297 & 0.794895 & 0.197436 & 0.405965 & 0.218483 & 0.621621 & 0.588901 & 0.55798 & 0.758998 & 0.0190227 & 0.0141301 & 0.262226 & 0.526782 & 0.897284 & 0.160378 & 0.882961 & 0.908824 & 0.288973 & 0.995771 & 0.217869 & 0.155613 & 0.14274 & 0.398137 & 0.715217 & 0.671268 & 0.309147 & 0.0980875 & 0.0506852 & 0.705388 & 0.856581 & 0.490066 & 0.868483 & 0.923126 & 0.134035 & 0.0515882 & 0.745122 & 0.967005 & 0.56791 & 0.478049 & 0.0906394 & 0.124289 & 0.333455 & 0.133029 & 0.785799 & 0.00307311 & 0.0231871 & $\\dots$ \\\\\n",
+ "\t7 & 0.122963 & 0.299071 & 0.398845 & 0.595742 & 0.897918 & 0.767277 & 0.528869 & 0.0952854 & 0.876014 & 0.91985 & 0.274228 & 0.235176 & 0.155168 & 0.897107 & 0.844195 & 0.523281 & 0.695864 & 0.151124 & 0.201065 & 0.433001 & 0.967306 & 0.277211 & 0.0633977 & 0.559057 & 0.803475 & 0.955828 & 0.418065 & 0.176816 & 0.452077 & 0.212605 & 0.359162 & 0.872456 & 0.954056 & 0.00969582 & 0.654253 & 0.451168 & 0.936156 & 0.83678 & 0.352908 & 0.355679 & 0.351366 & 0.6976 & 0.182677 & 0.582376 & 0.446669 & 0.468831 & 0.986564 & 0.787202 & 0.0207218 & 0.830462 & 0.528791 & 0.649264 & 0.462557 & 0.495886 & 0.331946 & 0.207492 & 0.147196 & 0.413481 & 0.384668 & 0.289411 & 0.671321 & 0.0849257 & 0.822076 & 0.691735 & 0.00201329 & 0.986001 & 0.255116 & 0.62795 & 0.439429 & 0.855033 & 0.0392876 & 0.533968 & 0.954528 & 0.621568 & 0.554224 & 0.245084 & 0.430127 & 0.0393655 & 0.861053 & 0.79146 & 0.19431 & 0.130647 & 0.320469 & 0.79884 & 0.508452 & 0.615816 & 0.620154 & 0.59971 & 0.95422 & 0.175857 & 0.0561981 & $\\dots$ \\\\\n",
+ "\t8 & 0.285565 & 0.860297 & 0.761779 & 0.493953 & 0.352795 & 0.0978239 & 0.33335 & 0.271201 & 0.925524 & 0.917375 & 0.576162 & 0.268133 & 0.125511 & 0.490454 & 0.344244 & 0.701716 & 0.974315 & 0.627148 & 0.719798 & 0.897083 & 0.355013 & 0.525964 & 0.1293 & 0.469946 & 0.220079 & 0.363505 & 0.511436 & 0.121252 & 0.22358 & 0.913205 & 0.00264764 & 0.68959 & 0.780974 & 0.0783856 & 0.796506 & 0.110054 & 0.368587 & 0.193997 & 0.29098 & 0.868428 & 0.786319 & 0.545261 & 0.919114 & 0.76211 & 0.999873 & 0.357683 & 0.432689 & 0.663905 & 0.100488 & 0.951057 & 0.516271 & 0.483088 & 0.94885 & 0.202503 & 0.303644 & 0.891888 & 0.795852 & 0.607904 & 0.85376 & 0.103206 & 0.714224 & 0.646276 & 0.320943 & 0.0962626 & 0.251722 & 0.732607 & 0.793814 & 0.72889 & 0.432618 & 0.425725 & 0.509217 & 0.0901841 & 0.0428452 & 0.662801 & 0.20999 & 0.78545 & 0.417713 & 0.587398 & 0.29783 & 0.443977 & 0.657121 & 0.614854 & 0.171036 & 0.333022 & 0.600891 & 0.690445 & 0.711591 & 0.353383 & 0.872337 & 0.56693 & 0.650327 & $\\dots$ \\\\\n",
+ "\t9 & 0.699475 & 0.526547 & 0.48827 & 0.833843 & 0.398902 & 0.34097 & 0.434416 & 0.737417 & 0.601661 & 0.948748 & 0.143168 & 0.39857 & 0.274069 & 0.441589 & 0.907523 & 0.776778 & 0.0880758 & 0.563284 & 0.035741 & 0.965501 & 0.158115 & 0.935467 & 0.0107191 & 0.794095 & 0.306485 & 0.563838 & 0.234564 & 0.470866 & 0.545337 & 0.882925 & 0.652653 & 0.484142 & 0.0444346 & 0.926649 & 0.0893685 & 0.149006 & 0.196885 & 0.902177 & 0.234035 & 0.518022 & 0.0508096 & 0.734057 & 0.71099 & 0.587393 & 0.899463 & 0.145148 & 0.130772 & 0.618149 & 0.231209 & 0.546901 & 0.536324 & 0.381786 & 0.110766 & 0.535949 & 0.188301 & 0.523542 & 0.609068 & 0.691422 & 0.785489 & 0.2771 & 0.198504 & 0.149313 & 0.283498 & 0.0928673 & 0.455494 & 0.017388 & 0.633155 & 0.669383 & 0.573861 & 0.747748 & 0.855555 & 0.859311 & 0.343575 & 0.326334 & 0.704096 & 0.752342 & 0.644027 & 0.0584409 & 0.374489 & 0.468853 & 0.301344 & 0.859881 & 0.353032 & 0.364108 & 0.712382 & 0.0796823 & 0.639522 & 0.799812 & 0.765472 & 0.449926 & 0.00834814 & $\\dots$ \\\\\n",
+ "\t10 & 0.166966 & 0.39248 & 0.927411 & 0.375408 & 0.948402 & 0.74614 & 0.165905 & 0.60924 & 0.658242 & 0.405263 & 0.250541 & 0.250369 & 0.528383 & 0.882483 & 0.669635 & 0.468719 & 0.211685 & 0.571305 & 0.941935 & 0.0399602 & 0.949572 & 0.884902 & 0.874846 & 0.935472 & 0.753027 & 0.222745 & 0.072964 & 0.446266 & 0.665754 & 0.494479 & 0.594426 & 0.22792 & 0.304495 & 0.32287 & 0.846079 & 0.635526 & 0.176167 & 0.335138 & 0.528078 & 0.744476 & 0.369796 & 0.541871 & 0.638983 & 0.512564 & 0.278364 & 0.379862 & 0.981846 & 0.310789 & 0.92563 & 0.345531 & 0.0565916 & 0.0972791 & 0.357956 & 0.979057 & 0.987561 & 0.80529 & 0.467411 & 0.329724 & 0.897648 & 0.860602 & 0.149986 & 0.480947 & 0.835866 & 0.561121 & 0.128314 & 0.962059 & 0.10865 & 0.0481761 & 0.842291 & 0.557756 & 0.290992 & 0.72197 & 0.215849 & 0.784464 & 0.480755 & 0.325451 & 0.00124807 & 0.255167 & 0.651753 & 0.861789 & 0.654518 & 0.395987 & 0.686211 & 0.201202 & 0.807569 & 0.966599 & 0.858589 & 0.0542331 & 0.803382 & 0.153509 & 0.349456 & $\\dots$ \\\\\n",
+ "\t11 & 0.416885 & 0.786112 & 0.892138 & 0.603528 & 0.400857 & 0.488044 & 0.805061 & 0.815509 & 0.949073 & 0.0997092 & 0.689906 & 0.471251 & 0.0254083 & 0.939511 & 0.0381978 & 0.87884 & 0.299637 & 0.999647 & 0.309296 & 0.0201042 & 0.514313 & 0.556854 & 0.213665 & 0.125529 & 0.644093 & 0.776143 & 0.428217 & 0.410361 & 0.31759 & 0.187317 & 0.271677 & 0.433429 & 0.0915086 & 0.690614 & 0.304914 & 0.614119 & 0.017071 & 0.432537 & 0.241412 & 0.571407 & 0.706505 & 0.053553 & 0.229129 & 0.410833 & 0.300025 & 0.366573 & 0.50443 & 0.815611 & 0.407297 & 0.0882654 & 0.221459 & 0.947458 & 0.161545 & 0.908259 & 0.491513 & 0.212744 & 0.0616568 & 0.645213 & 0.454906 & 0.37159 & 0.149114 & 0.193823 & 0.508172 & 0.0199597 & 0.120865 & 0.145493 & 0.0798437 & 0.280795 & 0.329265 & 0.475399 & 0.340869 & 0.895608 & 0.563804 & 0.258064 & 0.121789 & 0.921411 & 0.0950939 & 0.580073 & 0.758349 & 0.625454 & 0.752884 & 0.802718 & 0.920175 & 0.717342 & 0.719859 & 0.424176 & 0.837297 & 0.470277 & 0.980379 & 0.757167 & 0.152447 & $\\dots$ \\\\\n",
+ "\t12 & 0.754568 & 0.252141 & 0.125841 & 0.743868 & 0.322289 & 0.248748 & 0.233131 & 0.901151 & 0.541749 & 0.451507 & 0.743821 & 0.115309 & 0.0533659 & 0.224579 & 0.427137 & 0.732949 & 0.0139583 & 0.518952 & 0.524448 & 0.708239 & 0.680834 & 0.503947 & 0.297688 & 0.758444 & 0.155056 & 0.725885 & 0.560022 & 0.878697 & 0.788712 & 0.0911159 & 0.351682 & 0.15456 & 0.16106 & 0.938585 & 0.512901 & 0.667643 & 0.154321 & 0.948208 & 0.685353 & 0.400909 & 0.235272 & 0.137961 & 0.634572 & 0.305139 & 0.468947 & 0.783277 & 0.160702 & 0.801933 & 0.270504 & 0.54568 & 0.740096 & 0.453297 & 0.479879 & 0.445893 & 0.553824 & 0.624774 & 0.387326 & 0.522014 & 0.425619 & 0.728292 & 0.566535 & 0.823266 & 0.188184 & 0.954409 & 0.692347 & 0.723116 & 0.334068 & 0.156718 & 0.050776 & 0.649684 & 0.523817 & 0.951366 & 0.981999 & 0.131595 & 0.63162 & 0.0457824 & 0.788564 & 0.838033 & 0.610428 & 0.849241 & 0.14634 & 0.400393 & 0.629283 & 0.704738 & 0.11485 & 0.202387 & 0.0125521 & 0.0500447 & 0.952813 & 0.103388 & 0.916409 & $\\dots$ \\\\\n",
+ "\t13 & 0.359805 & 0.70869 & 0.180921 & 0.318276 & 0.696253 & 0.780391 & 0.395035 & 0.494216 & 0.816286 & 0.928157 & 0.0477657 & 0.673665 & 0.809989 & 0.160694 & 0.0990286 & 0.627871 & 0.501307 & 0.460785 & 0.414588 & 0.911045 & 0.103021 & 0.654851 & 0.588015 & 0.816675 & 0.229959 & 0.996814 & 0.390815 & 0.289545 & 0.69559 & 0.747203 & 0.676633 & 0.887763 & 0.00891286 & 0.530944 & 0.541194 & 0.354979 & 0.953086 & 0.148502 & 0.560864 & 0.475162 & 0.969971 & 0.00743405 & 0.11161 & 0.704805 & 0.205323 & 0.545716 & 0.756746 & 0.494702 & 0.725381 & 0.68307 & 0.368649 & 0.815366 & 0.744184 & 0.416854 & 0.113417 & 0.0161777 & 0.237871 & 0.328869 & 0.388594 & 0.827495 & 0.525308 & 0.673568 & 0.0787224 & 0.146568 & 0.485066 & 0.877684 & 0.416192 & 0.571045 & 0.182155 & 0.134323 & 0.150976 & 0.742043 & 0.331399 & 0.441721 & 0.258435 & 0.179365 & 0.547326 & 0.0396702 & 0.901111 & 0.875182 & 0.0940496 & 0.135748 & 0.815906 & 0.318638 & 0.467641 & 0.350695 & 0.438721 & 0.0306896 & 0.826348 & 0.188778 & 0.778235 & $\\dots$ \\\\\n",
+ "\t14 & 0.256697 & 0.442184 & 0.882668 & 0.295139 & 0.661251 & 0.345927 & 0.00618738 & 0.839614 & 0.126678 & 0.367896 & 0.905565 & 0.992191 & 0.814239 & 0.891956 & 0.945523 & 0.105662 & 0.144674 & 0.742911 & 0.0199684 & 0.600905 & 0.938825 & 0.637899 & 0.574996 & 0.959144 & 0.289137 & 0.05706 & 0.534704 & 0.859948 & 0.792136 & 0.699435 & 0.452928 & 0.00628875 & 0.646328 & 0.00625986 & 0.0948943 & 0.509564 & 0.831057 & 0.150589 & 0.99755 & 0.825637 & 0.359116 & 0.25917 & 0.184987 & 0.246293 & 0.678959 & 0.246704 & 0.262669 & 0.673208 & 0.312037 & 0.32152 & 0.568042 & 0.0513086 & 0.404207 & 0.882484 & 0.544177 & 0.857876 & 0.537279 & 0.120186 & 0.0197411 & 0.134976 & 0.490367 & 0.915333 & 0.267332 & 0.608344 & 0.702321 & 0.818114 & 0.128523 & 0.923254 & 0.198797 & 0.36647 & 0.690348 & 0.441621 & 0.0754382 & 0.827973 & 0.287905 & 0.151659 & 0.908283 & 0.622234 & 0.924394 & 0.437373 & 0.249388 & 0.343454 & 0.0902369 & 0.95358 & 0.5275 & 0.490004 & 0.448121 & 0.434673 & 0.703803 & 0.398894 & 0.106829 & $\\dots$ \\\\\n",
+ "\t15 & 0.785111 & 0.0287701 & 0.723653 & 0.420017 & 0.369392 & 0.12533 & 0.613561 & 0.353583 & 0.0484257 & 0.48146 & 0.00590497 & 0.403021 & 0.928766 & 0.936654 & 0.0148183 & 0.541617 & 0.0887707 & 0.65463 & 0.112795 & 0.819853 & 0.153062 & 0.753844 & 0.157142 & 0.801286 & 0.579688 & 0.0908388 & 0.356038 & 0.744643 & 0.250392 & 0.908347 & 0.723184 & 0.680819 & 0.255666 & 0.582374 & 0.159995 & 0.0551349 & 0.25848 & 0.956404 & 0.106678 & 0.578684 & 0.819128 & 0.835611 & 0.164239 & 0.352778 & 0.260887 & 0.340043 & 0.359265 & 0.753189 & 0.691452 & 0.465358 & 0.294545 & 0.101817 & 0.408753 & 0.197066 & 0.891221 & 0.449196 & 0.353885 & 0.817879 & 0.302634 & 0.781319 & 0.878146 & 0.223373 & 0.341864 & 0.67 & 0.818568 & 0.45743 & 0.0106534 & 0.109349 & 0.755255 & 0.554298 & 0.0187193 & 0.470433 & 0.747251 & 0.883222 & 0.0343146 & 0.0722684 & 0.82199 & 0.213906 & 0.916131 & 0.43422 & 0.686634 & 0.0813054 & 0.515826 & 0.441113 & 0.369452 & 0.468456 & 0.700418 & 0.199584 & 0.790778 & 0.876855 & 0.197238 & $\\dots$ \\\\\n",
+ "\t16 & 0.119175 & 0.997407 & 0.600071 & 0.150134 & 0.294867 & 0.232884 & 0.0359352 & 0.0405297 & 0.956944 & 0.206612 & 0.891109 & 0.536923 & 0.444805 & 0.0592091 & 0.349784 & 0.041129 & 0.204062 & 0.356162 & 0.427058 & 0.436655 & 0.323965 & 0.405204 & 0.243517 & 0.0983356 & 0.707926 & 0.626772 & 0.397375 & 0.103048 & 0.493754 & 0.0512734 & 0.284098 & 0.905525 & 0.2557 & 0.492156 & 0.217349 & 0.72758 & 0.45774 & 0.757575 & 0.504359 & 0.111195 & 0.144946 & 0.63563 & 0.640765 & 0.473529 & 0.888842 & 0.0662461 & 0.0669501 & 0.0937819 & 0.284774 & 0.388454 & 0.315083 & 0.705965 & 0.110245 & 0.545334 & 0.328949 & 0.953212 & 0.869523 & 0.883671 & 0.789061 & 0.538512 & 0.17662 & 0.679105 & 0.756235 & 0.700965 & 0.714096 & 0.773286 & 0.838677 & 0.194138 & 0.189236 & 0.801607 & 0.928073 & 0.21181 & 0.59794 & 0.939369 & 0.6301 & 0.428423 & 0.400726 & 0.392068 & 0.276225 & 0.647371 & 0.204536 & 0.803716 & 0.756323 & 0.630274 & 0.981307 & 0.669312 & 0.731045 & 0.686936 & 0.830185 & 0.225691 & 0.718969 & $\\dots$ \\\\\n",
+ "\t17 & 0.767517 & 0.0917449 & 0.98261 & 0.155235 & 0.779822 & 0.697622 & 0.276395 & 0.0334867 & 0.211488 & 0.656095 & 0.271849 & 0.921427 & 0.704899 & 0.125585 & 0.677568 & 0.297045 & 0.438671 & 0.141978 & 0.197653 & 0.14572 & 0.901121 & 0.826308 & 0.254755 & 0.963487 & 0.69993 & 0.799628 & 0.384087 & 0.694298 & 0.505828 & 0.325642 & 0.518123 & 0.386466 & 0.86465 & 0.72836 & 0.282926 & 0.6356 & 0.24907 & 0.705237 & 0.185539 & 0.739488 & 0.316557 & 0.990732 & 0.291909 & 0.919134 & 0.609385 & 0.741514 & 0.100009 & 0.535735 & 0.198862 & 0.882838 & 0.497125 & 0.995807 & 0.0103457 & 0.820863 & 0.626746 & 0.296194 & 0.96574 & 0.655598 & 0.436826 & 0.163791 & 0.659449 & 0.36553 & 0.82149 & 0.976503 & 0.88755 & 0.125286 & 0.700833 & 0.946964 & 0.0848134 & 0.196714 & 0.937769 & 0.652907 & 0.619412 & 0.722275 & 0.566419 & 0.137032 & 0.421072 & 0.883118 & 0.076193 & 0.924065 & 0.742058 & 0.695228 & 0.692421 & 0.814906 & 0.0784302 & 0.395074 & 0.0195594 & 0.0644042 & 0.192134 & 0.226081 & 0.305123 & $\\dots$ \\\\\n",
+ "\t18 & 0.0912103 & 0.858123 & 0.523157 & 0.341457 & 0.0188369 & 0.654098 & 0.713415 & 0.129512 & 0.111948 & 0.459208 & 0.183655 & 0.920433 & 0.997478 & 0.650843 & 0.0416978 & 0.983741 & 0.0409416 & 0.681168 & 0.652302 & 0.380478 & 0.182672 & 0.48964 & 0.183932 & 0.779065 & 0.531586 & 0.731207 & 0.546016 & 0.209642 & 0.388015 & 0.707885 & 0.401469 & 0.414996 & 0.34144 & 0.123668 & 0.97512 & 0.600568 & 0.840934 & 0.0844493 & 0.83362 & 0.0164664 & 0.643974 & 0.370158 & 0.36341 & 0.49419 & 0.134667 & 0.111654 & 0.0603724 & 0.0192727 & 0.817629 & 0.337511 & 0.282739 & 0.0427535 & 0.428996 & 0.991509 & 0.699613 & 0.942149 & 0.979018 & 0.774627 & 0.263582 & 0.0343829 & 0.691345 & 0.529715 & 0.3491 & 0.568308 & 0.445266 & 0.860663 & 0.737898 & 0.158701 & 0.0853444 & 0.671737 & 0.778676 & 0.616331 & 0.605166 & 0.137921 & 0.49265 & 0.084879 & 0.490077 & 0.840441 & 0.805008 & 0.577131 & 0.164546 & 0.585887 & 0.712441 & 0.0406718 & 0.813799 & 0.597728 & 0.31394 & 0.493442 & 0.755567 & 0.148272 & 0.780615 & $\\dots$ \\\\\n",
+ "\t19 & 0.476591 & 0.800718 & 0.11265 & 0.283065 & 0.685996 & 0.948567 & 0.922045 & 0.393786 & 0.235692 & 0.923032 & 0.389098 & 0.305808 & 0.0757194 & 0.643833 & 0.508898 & 0.909184 & 0.289196 & 0.449011 & 0.449166 & 0.2876 & 0.0347074 & 0.44147 & 0.103866 & 0.526855 & 0.983031 & 0.0932253 & 0.537359 & 0.31136 & 0.347529 & 0.379231 & 0.224118 & 0.668162 & 0.128517 & 0.539799 & 0.172349 & 0.435991 & 0.180826 & 0.104718 & 0.932985 & 0.0209317 & 0.286929 & 0.644148 & 0.345779 & 0.723341 & 0.675401 & 0.220316 & 0.0820871 & 0.321589 & 0.693457 & 0.409098 & 0.044919 & 0.982601 & 0.902514 & 0.812016 & 0.530556 & 0.0802128 & 0.350024 & 0.332135 & 0.726545 & 0.730135 & 0.874499 & 0.942222 & 0.125513 & 0.0707746 & 0.174651 & 0.713836 & 0.517898 & 0.508667 & 0.0270955 & 0.958009 & 0.109962 & 0.351123 & 0.926009 & 0.952153 & 0.729818 & 0.58579 & 0.235482 & 0.247183 & 0.196109 & 0.363625 & 0.047663 & 0.190607 & 0.53017 & 0.945846 & 0.750075 & 0.236835 & 0.745386 & 0.0186635 & 0.963414 & 0.502514 & 0.232607 & $\\dots$ \\\\\n",
+ "\t20 & 0.50936 & 0.0677106 & 0.646342 & 0.529543 & 0.906977 & 0.680919 & 0.854906 & 0.349826 & 0.108508 & 0.152323 & 0.529554 & 0.375108 & 0.449717 & 0.536842 & 0.831645 & 0.809305 & 0.388969 & 0.924636 & 0.566278 & 0.812893 & 0.30783 & 0.923731 & 0.00478722 & 0.26212 & 0.449992 & 0.0998924 & 0.610672 & 0.55376 & 0.70763 & 0.230976 & 0.524448 & 0.680562 & 0.0315408 & 0.957406 & 0.651823 & 0.00561359 & 0.903019 & 0.617892 & 0.0853425 & 0.53347 & 0.82833 & 0.854056 & 0.633794 & 0.339436 & 0.291664 & 0.750913 & 0.345843 & 0.243037 & 0.185055 & 0.0380478 & 0.184534 & 0.261817 & 0.1994 & 0.323532 & 0.95045 & 0.632434 & 0.566106 & 0.874069 & 0.499607 & 0.0521806 & 0.528636 & 0.526479 & 0.134858 & 0.879343 & 0.880208 & 0.953152 & 0.619533 & 0.554013 & 0.32116 & 0.402539 & 0.230132 & 0.914399 & 0.849661 & 0.706032 & 0.999066 & 0.709593 & 0.806477 & 0.579369 & 0.237576 & 0.872421 & 0.917755 & 0.238283 & 0.624868 & 0.670813 & 0.0892321 & 0.100787 & 0.528799 & 0.563496 & 0.422123 & 0.235726 & 0.744823 & $\\dots$ \\\\\n",
+ "\t21 & 0.307134 & 0.93039 & 0.547991 & 0.282763 & 0.494457 & 0.318209 & 0.669773 & 0.853721 & 0.850005 & 0.715816 & 0.0337688 & 0.804402 & 0.893978 & 0.893904 & 0.312627 & 0.669111 & 0.99144 & 0.947155 & 0.639849 & 0.483649 & 0.316967 & 0.471222 & 0.178188 & 0.0538918 & 0.0673325 & 0.819659 & 0.213087 & 0.902479 & 0.146789 & 0.956968 & 0.437638 & 0.15399 & 0.551659 & 0.188814 & 0.584219 & 0.25859 & 0.497828 & 0.929091 & 0.629446 & 0.426062 & 0.353392 & 0.111176 & 0.370121 & 0.6948 & 0.705744 & 0.199877 & 0.375927 & 0.306254 & 0.0172798 & 0.326679 & 0.0677236 & 0.774519 & 0.0455985 & 0.353574 & 0.187917 & 0.623197 & 0.208424 & 0.403822 & 0.840184 & 0.222461 & 0.0881465 & 0.931478 & 0.853111 & 0.397111 & 0.35587 & 0.432234 & 0.0661484 & 0.539728 & 0.656949 & 0.524179 & 0.988885 & 0.450697 & 0.00364027 & 0.205573 & 0.662258 & 0.737181 & 0.977659 & 0.961869 & 0.0908337 & 0.583425 & 0.337415 & 0.0922778 & 0.398518 & 0.557303 & 0.866034 & 0.825382 & 0.334265 & 0.0775024 & 0.634409 & 0.0882148 & 0.951536 & $\\dots$ \\\\\n",
+ "\t22 & 0.0748494 & 0.842819 & 0.174397 & 0.585027 & 0.647524 & 0.361121 & 0.457783 & 0.197152 & 0.209876 & 0.466329 & 0.406155 & 0.152351 & 0.505483 & 0.456496 & 0.283564 & 0.143957 & 0.116476 & 0.86016 & 0.64683 & 0.210622 & 0.826885 & 0.300417 & 0.71228 & 0.904871 & 0.696229 & 0.72267 & 0.174136 & 0.23003 & 0.741294 & 0.0815247 & 0.979206 & 0.742809 & 0.878433 & 0.0525933 & 0.950189 & 0.0190811 & 0.933998 & 0.770685 & 0.86052 & 0.865665 & 0.297431 & 0.795359 & 0.645038 & 0.712073 & 0.634281 & 0.742885 & 0.961849 & 0.885925 & 0.248304 & 0.453857 & 0.997385 & 0.383937 & 0.547439 & 0.781781 & 0.712037 & 0.348259 & 0.081833 & 0.38983 & 0.222769 & 0.786352 & 0.11826 & 0.995367 & 0.414437 & 0.31492 & 0.495709 & 0.617816 & 0.139765 & 0.167134 & 0.909815 & 0.978409 & 0.559653 & 0.264359 & 0.310432 & 0.857375 & 0.714564 & 0.554775 & 0.707106 & 0.0868333 & 0.37476 & 0.405064 & 0.934688 & 0.210175 & 0.315303 & 0.10453 & 0.709695 & 0.250576 & 0.988624 & 0.221699 & 0.251387 & 0.736891 & 0.821235 & $\\dots$ \\\\\n",
+ "\t23 & 0.910248 & 0.974573 & 0.262119 & 0.972754 & 0.831086 & 0.884634 & 0.439225 & 0.385293 & 0.853531 & 0.639563 & 0.855535 & 0.333158 & 0.597535 & 0.00115976 & 0.124596 & 0.301587 & 0.143348 & 0.488919 & 0.2388 & 0.58854 & 0.267387 & 0.380235 & 0.674924 & 0.518806 & 0.759586 & 0.756648 & 0.487546 & 0.435687 & 0.0224561 & 0.0792966 & 0.52714 & 0.711805 & 0.378414 & 0.519893 & 0.713293 & 0.290639 & 0.572989 & 0.0323744 & 0.332728 & 0.432508 & 0.963921 & 0.73476 & 0.461187 & 0.797265 & 0.907193 & 0.922693 & 0.534732 & 0.303427 & 0.253601 & 0.221667 & 0.888425 & 0.157442 & 0.68488 & 0.407556 & 0.362209 & 0.938802 & 0.8389 & 0.0255732 & 0.561258 & 0.499792 & 0.815692 & 0.408309 & 0.00851013 & 0.249499 & 0.709797 & 0.551949 & 0.972655 & 0.158132 & 0.215669 & 0.287993 & 0.684705 & 0.976339 & 0.472291 & 0.629154 & 0.515939 & 0.237566 & 0.0324053 & 0.219753 & 0.584838 & 0.596525 & 0.700229 & 0.170792 & 0.587667 & 0.223331 & 0.810288 & 0.280452 & 0.281214 & 0.968538 & 0.625783 & 0.9265 & 0.987795 & $\\dots$ \\\\\n",
+ "\t24 & 0.256616 & 0.810693 & 0.049729 & 0.69182 & 0.960388 & 0.971199 & 0.354185 & 0.553695 & 0.915114 & 0.53437 & 0.483389 & 0.420419 & 0.931358 & 0.846367 & 0.0833473 & 0.882511 & 0.0889344 & 0.105441 & 0.898072 & 0.618268 & 0.322621 & 0.935854 & 0.513055 & 0.578302 & 0.556542 & 0.635414 & 0.920086 & 0.313886 & 0.077584 & 0.410661 & 0.536799 & 0.842727 & 0.323424 & 0.0979703 & 0.643813 & 0.739761 & 0.367318 & 0.498612 & 0.0349703 & 0.289825 & 0.505065 & 0.622601 & 0.238781 & 0.800493 & 0.834235 & 0.707748 & 0.254695 & 0.55248 & 0.900382 & 0.0516816 & 0.0722662 & 0.670037 & 0.528175 & 0.838406 & 0.418662 & 0.266291 & 0.581613 & 0.610446 & 0.841307 & 0.673156 & 0.705877 & 0.846345 & 0.8071 & 0.484362 & 0.00264264 & 0.376861 & 0.00286258 & 0.813644 & 0.0601934 & 0.401146 & 0.455901 & 0.412068 & 0.205892 & 0.692938 & 0.761514 & 0.608291 & 0.165913 & 0.70564 & 0.456988 & 0.752319 & 0.762804 & 0.552292 & 0.596155 & 0.306926 & 0.407184 & 0.745572 & 0.0312873 & 0.52841 & 0.918759 & 0.689452 & 0.14905 & $\\dots$ \\\\\n",
+ "\t$\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & $\\dots$ & \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "100×1000 DataFrame. Omitted printing of 994 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼───────────┼───────────┼───────────┼────────────┼───────────┼───────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │\n",
- "│ 2 │ 0.774187 │ 0.356867 │ 0.885526 │ 0.11275 │ 0.780669 │ 0.593082 │\n",
- "│ 3 │ 0.609714 │ 0.288531 │ 0.355283 │ 0.480804 │ 0.593935 │ 0.893138 │\n",
- "│ 4 │ 0.694783 │ 0.570324 │ 0.0789985 │ 0.818004 │ 0.554942 │ 0.0996372 │\n",
- "│ 5 │ 0.791302 │ 0.905282 │ 0.117797 │ 0.406855 │ 0.681548 │ 0.819496 │\n",
- "│ 6 │ 0.0740549 │ 0.679826 │ 0.168822 │ 0.518838 │ 0.335502 │ 0.565356 │\n",
- "│ 7 │ 0.621834 │ 0.759774 │ 0.562538 │ 0.560436 │ 0.269123 │ 0.340253 │\n",
- "│ 8 │ 0.1039 │ 0.919697 │ 0.418945 │ 0.813356 │ 0.716439 │ 0.545716 │\n",
- "│ 9 │ 0.954089 │ 0.808411 │ 0.0782112 │ 0.154967 │ 0.730512 │ 0.57385 │\n",
- "│ 10 │ 0.484041 │ 0.0670306 │ 0.568193 │ 0.236212 │ 0.648555 │ 0.282126 │\n",
+ "100×1000 DataFrame. Omitted printing of 917 columns\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │ x21 │ x22 │ x23 │ x24 │ x25 │ x26 │ x27 │ x28 │ x29 │ x30 │ x31 │ x32 │ x33 │ x34 │ x35 │ x36 │ x37 │ x38 │ x39 │ x40 │ x41 │ x42 │ x43 │ x44 │ x45 │ x46 │ x47 │ x48 │ x49 │ x50 │ x51 │ x52 │ x53 │ x54 │ x55 │ x56 │ x57 │ x58 │ x59 │ x60 │ x61 │ x62 │ x63 │ x64 │ x65 │ x66 │ x67 │ x68 │ x69 │ x70 │ x71 │ x72 │ x73 │ x74 │ x75 │ x76 │ x77 │ x78 │ x79 │ x80 │ x81 │ x82 │ x83 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────────┼───────────┼──────────┼───────────┼──────────┼───────────┼──────────┼───────────┼───────────┼───────────┼──────────┼───────────┼───────────┼────────────┼───────────┼───────────┼──────────┼──────────┼───────────┼───────────┼───────────┼────────────┼───────────┼───────────┼────────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼────────────┼──────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────┼──────────┼───────────┼──────────┼────────────┼───────────┼───────────┼────────────┼───────────┼───────────┼───────────┼───────────┼───────────┼──────────┼───────────┼───────────┼───────────┼──────────┼────────────┼──────────┼───────────┼──────────┼───────────┼──────────┼───────────┼───────────┼────────────┼──────────┼───────────┼───────────┼───────────┼───────────┼──────────┼───────────┼──────────┼───────────┼───────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │ 0.192599 │ 0.00604097 │ 0.581288 │ 0.746245 │ 0.385509 │ 0.355455 │ 0.929221 │ 0.729291 │ 0.778783 │ 0.598102 │ 0.498373 │ 0.0278266 │ 0.0462616 │ 0.0804585 │ 0.486005 │ 0.829665 │ 0.605489 │ 0.922619 │ 0.615983 │ 0.975146 │ 0.218467 │ 0.214458 │ 0.201525 │ 0.388645 │ 0.558404 │ 0.163782 │ 0.437683 │ 0.897702 │ 0.0696074 │ 0.656873 │ 0.096646 │ 0.604482 │ 0.826148 │ 0.90222 │ 0.213158 │ 0.145633 │ 0.715524 │ 0.821202 │ 0.851274 │ 0.809465 │ 0.938894 │ 0.833493 │ 0.0128205 │ 0.911447 │ 0.572925 │ 0.492402 │ 0.70685 │ 0.391735 │ 0.379956 │ 0.894197 │ 0.319608 │ 0.282724 │ 0.662529 │ 0.751371 │ 0.0515758 │ 0.0554555 │ 0.407253 │ 0.714758 │ 0.930454 │ 0.34133 │ 0.409226 │ 0.0593862 │ 0.943453 │\n",
+ "│ 2 │ 0.815357 │ 0.7703 │ 0.239176 │ 0.275748 │ 0.183924 │ 0.507341 │ 0.284418 │ 0.28708 │ 0.942902 │ 0.0887963 │ 0.734511 │ 0.379075 │ 0.434635 │ 0.474651 │ 0.280465 │ 0.180545 │ 0.997093 │ 0.58534 │ 0.404039 │ 0.0574775 │ 0.829238 │ 0.551627 │ 0.0609086 │ 0.866673 │ 0.00203838 │ 0.23122 │ 0.100199 │ 0.542427 │ 0.6176 │ 0.210846 │ 0.169462 │ 0.317331 │ 0.120702 │ 0.522714 │ 0.771854 │ 0.861075 │ 0.607028 │ 0.577105 │ 0.0263973 │ 0.508519 │ 0.207115 │ 0.260203 │ 0.966495 │ 0.950563 │ 0.23515 │ 0.807233 │ 0.667959 │ 0.469412 │ 0.68944 │ 0.303178 │ 0.916198 │ 0.175827 │ 0.630586 │ 0.617525 │ 0.436164 │ 0.30317 │ 0.0596742 │ 0.0982103 │ 0.094269 │ 0.774918 │ 0.74536 │ 0.45168 │ 0.0928307 │ 0.314255 │ 0.837564 │ 0.507878 │ 0.633839 │ 0.298748 │ 0.501813 │ 0.667421 │ 0.244102 │ 0.99187 │ 0.320146 │ 0.327764 │ 0.0972044 │ 0.865251 │ 0.370263 │ 0.207617 │ 0.490622 │ 0.128018 │ 0.973084 │ 0.769352 │ 0.780947 │\n",
+ "│ 3 │ 0.816104 │ 0.0311551 │ 0.5683 │ 0.704495 │ 0.549385 │ 0.471999 │ 0.543525 │ 0.878611 │ 0.0553813 │ 0.433413 │ 0.721113 │ 0.90562 │ 0.822592 │ 0.101155 │ 0.215981 │ 0.0727627 │ 0.579711 │ 0.579151 │ 0.755325 │ 0.632599 │ 0.676199 │ 0.921829 │ 0.749605 │ 0.981136 │ 0.10249 │ 0.953556 │ 0.50945 │ 0.646269 │ 0.396988 │ 0.932969 │ 0.506011 │ 0.387092 │ 0.513568 │ 0.548799 │ 0.117301 │ 0.749199 │ 0.161664 │ 0.507067 │ 0.982289 │ 0.0554118 │ 0.0723973 │ 0.296174 │ 0.2617 │ 0.0464874 │ 0.0168145 │ 0.938944 │ 0.731108 │ 0.464276 │ 0.0282041 │ 0.112549 │ 0.745749 │ 0.432314 │ 0.693835 │ 0.956663 │ 0.177674 │ 0.874948 │ 0.587931 │ 0.834267 │ 0.751571 │ 0.871607 │ 0.118688 │ 0.895995 │ 0.688151 │ 0.931742 │ 0.0470647 │ 0.356565 │ 0.648014 │ 0.314232 │ 0.90112 │ 0.837802 │ 0.419339 │ 0.126734 │ 0.00268467 │ 0.843003 │ 0.505144 │ 0.5602 │ 0.0985052 │ 0.861954 │ 0.860644 │ 0.204682 │ 0.634035 │ 0.553771 │ 0.220832 │\n",
+ "│ 4 │ 0.0294096 │ 0.602984 │ 0.357492 │ 0.588966 │ 0.100176 │ 0.163219 │ 0.3719 │ 0.0634015 │ 0.57308 │ 0.795895 │ 0.89425 │ 0.0849626 │ 0.763744 │ 0.239118 │ 0.722183 │ 0.856142 │ 0.180864 │ 0.581203 │ 0.3304 │ 0.520827 │ 0.0140902 │ 0.402648 │ 0.492288 │ 0.0419267 │ 0.565855 │ 0.185707 │ 0.912092 │ 0.276022 │ 0.687733 │ 0.152818 │ 0.596199 │ 0.246881 │ 0.624406 │ 0.86924 │ 0.60933 │ 0.662877 │ 0.97319 │ 0.112181 │ 0.417401 │ 0.384564 │ 0.824204 │ 0.936204 │ 0.710395 │ 0.962075 │ 0.429801 │ 0.781552 │ 0.110724 │ 0.238736 │ 0.239962 │ 0.805589 │ 0.45364 │ 0.827796 │ 0.0670384 │ 0.651466 │ 0.136 │ 0.596721 │ 0.0877139 │ 0.147265 │ 0.621543 │ 0.185766 │ 0.935794 │ 0.940496 │ 0.041551 │ 0.380434 │ 0.804594 │ 0.463235 │ 0.614597 │ 0.995259 │ 0.853942 │ 0.909778 │ 0.677835 │ 0.136624 │ 0.0101655 │ 0.313183 │ 0.793315 │ 0.640075 │ 0.802004 │ 0.355651 │ 0.797319 │ 0.811142 │ 0.8665 │ 0.440861 │ 0.110327 │\n",
+ "│ 5 │ 0.735294 │ 0.518496 │ 0.867751 │ 0.944726 │ 0.304592 │ 0.341913 │ 0.681918 │ 0.0712981 │ 0.999297 │ 0.8393 │ 0.949566 │ 0.461614 │ 0.249693 │ 0.5351 │ 0.908043 │ 0.197059 │ 0.688323 │ 0.200507 │ 0.0450562 │ 0.70558 │ 0.770484 │ 0.0854422 │ 0.843648 │ 0.641052 │ 0.408662 │ 0.479613 │ 0.47507 │ 0.826897 │ 0.168435 │ 0.433382 │ 0.502158 │ 0.274056 │ 0.61335 │ 0.89971 │ 0.717724 │ 0.94818 │ 0.375389 │ 0.953553 │ 0.455064 │ 0.483564 │ 0.0675189 │ 0.274972 │ 0.0285296 │ 0.683966 │ 0.192759 │ 0.263576 │ 0.531961 │ 0.227704 │ 0.102302 │ 0.786472 │ 0.028373 │ 0.0335419 │ 0.90208 │ 0.493996 │ 0.860681 │ 0.513063 │ 0.0637473 │ 0.185034 │ 0.940987 │ 0.029071 │ 0.715109 │ 0.199015 │ 0.430876 │ 0.038609 │ 0.843466 │ 0.554907 │ 0.130222 │ 0.25381 │ 0.927273 │ 0.7202 │ 0.45438 │ 0.968065 │ 0.244117 │ 0.964951 │ 0.59948 │ 0.0335906 │ 0.0874323 │ 0.919734 │ 0.57089 │ 0.541353 │ 0.743658 │ 0.953108 │ 0.601884 │\n",
+ "│ 6 │ 0.104985 │ 0.748484 │ 0.270928 │ 0.726806 │ 0.242353 │ 0.424651 │ 0.89167 │ 0.0989472 │ 0.63658 │ 0.451663 │ 0.58207 │ 0.37181 │ 0.784128 │ 0.881445 │ 0.522263 │ 0.843995 │ 0.647146 │ 0.510528 │ 0.760864 │ 0.176008 │ 0.604682 │ 0.529928 │ 0.868341 │ 0.956101 │ 0.636343 │ 0.346888 │ 0.383413 │ 0.124892 │ 0.137329 │ 0.953385 │ 0.019473 │ 0.918218 │ 0.217521 │ 0.454126 │ 0.216184 │ 0.128865 │ 0.71009 │ 0.202403 │ 0.786343 │ 0.376344 │ 0.876184 │ 0.173444 │ 0.543272 │ 0.569241 │ 0.217485 │ 0.54297 │ 0.794895 │ 0.197436 │ 0.405965 │ 0.218483 │ 0.621621 │ 0.588901 │ 0.55798 │ 0.758998 │ 0.0190227 │ 0.0141301 │ 0.262226 │ 0.526782 │ 0.897284 │ 0.160378 │ 0.882961 │ 0.908824 │ 0.288973 │ 0.995771 │ 0.217869 │ 0.155613 │ 0.14274 │ 0.398137 │ 0.715217 │ 0.671268 │ 0.309147 │ 0.0980875 │ 0.0506852 │ 0.705388 │ 0.856581 │ 0.490066 │ 0.868483 │ 0.923126 │ 0.134035 │ 0.0515882 │ 0.745122 │ 0.967005 │ 0.56791 │\n",
+ "│ 7 │ 0.122963 │ 0.299071 │ 0.398845 │ 0.595742 │ 0.897918 │ 0.767277 │ 0.528869 │ 0.0952854 │ 0.876014 │ 0.91985 │ 0.274228 │ 0.235176 │ 0.155168 │ 0.897107 │ 0.844195 │ 0.523281 │ 0.695864 │ 0.151124 │ 0.201065 │ 0.433001 │ 0.967306 │ 0.277211 │ 0.0633977 │ 0.559057 │ 0.803475 │ 0.955828 │ 0.418065 │ 0.176816 │ 0.452077 │ 0.212605 │ 0.359162 │ 0.872456 │ 0.954056 │ 0.00969582 │ 0.654253 │ 0.451168 │ 0.936156 │ 0.83678 │ 0.352908 │ 0.355679 │ 0.351366 │ 0.6976 │ 0.182677 │ 0.582376 │ 0.446669 │ 0.468831 │ 0.986564 │ 0.787202 │ 0.0207218 │ 0.830462 │ 0.528791 │ 0.649264 │ 0.462557 │ 0.495886 │ 0.331946 │ 0.207492 │ 0.147196 │ 0.413481 │ 0.384668 │ 0.289411 │ 0.671321 │ 0.0849257 │ 0.822076 │ 0.691735 │ 0.00201329 │ 0.986001 │ 0.255116 │ 0.62795 │ 0.439429 │ 0.855033 │ 0.0392876 │ 0.533968 │ 0.954528 │ 0.621568 │ 0.554224 │ 0.245084 │ 0.430127 │ 0.0393655 │ 0.861053 │ 0.79146 │ 0.19431 │ 0.130647 │ 0.320469 │\n",
"⋮\n",
- "│ 90 │ 0.821432 │ 0.225739 │ 0.141465 │ 0.575822 │ 0.254692 │ 0.419062 │\n",
- "│ 91 │ 0.202556 │ 0.127388 │ 0.19081 │ 0.404601 │ 0.530942 │ 0.608409 │\n",
- "│ 92 │ 0.937518 │ 0.221761 │ 0.411655 │ 0.79638 │ 0.869549 │ 0.10569 │\n",
- "│ 93 │ 0.0948212 │ 0.397172 │ 0.186674 │ 0.112636 │ 0.340852 │ 0.385897 │\n",
- "│ 94 │ 0.795611 │ 0.322295 │ 0.24501 │ 0.852741 │ 0.513223 │ 0.746023 │\n",
- "│ 95 │ 0.616807 │ 0.643675 │ 0.818222 │ 0.452144 │ 0.577498 │ 0.0275389 │\n",
- "│ 96 │ 0.941877 │ 0.274469 │ 0.568364 │ 0.673138 │ 0.498849 │ 0.0177696 │\n",
- "│ 97 │ 0.690393 │ 0.911381 │ 0.958798 │ 0.115693 │ 0.208621 │ 0.433634 │\n",
- "│ 98 │ 0.41313 │ 0.341462 │ 0.504511 │ 0.37107 │ 0.0769661 │ 0.127312 │\n",
- "│ 99 │ 0.368159 │ 0.517769 │ 0.455241 │ 0.00631866 │ 0.150526 │ 0.379844 │\n",
- "│ 100 │ 0.200116 │ 0.231079 │ 0.972762 │ 0.848786 │ 0.203343 │ 0.12242 │"
+ "│ 93 │ 0.643518 │ 0.423669 │ 0.987373 │ 0.902996 │ 0.264184 │ 0.0687632 │ 0.246364 │ 0.936528 │ 0.0626176 │ 0.119095 │ 0.261827 │ 0.543948 │ 0.142993 │ 0.877995 │ 0.951343 │ 0.394104 │ 0.861538 │ 0.491522 │ 0.592395 │ 0.952958 │ 0.905107 │ 0.170457 │ 0.691412 │ 0.305499 │ 0.179366 │ 0.662212 │ 0.933041 │ 0.230239 │ 0.32764 │ 0.767 │ 0.709468 │ 0.841898 │ 0.0214527 │ 0.253015 │ 0.526092 │ 0.414261 │ 0.0857839 │ 0.323197 │ 0.989589 │ 0.580757 │ 0.332117 │ 0.743741 │ 0.572841 │ 0.133382 │ 0.445565 │ 0.921668 │ 0.0830206 │ 0.572769 │ 0.320461 │ 0.166777 │ 0.243892 │ 0.132612 │ 0.765052 │ 0.307305 │ 0.683863 │ 0.275755 │ 0.271901 │ 0.883787 │ 0.862931 │ 0.750414 │ 0.88543 │ 0.388676 │ 0.0279482 │ 0.862581 │ 0.81636 │ 0.293966 │ 0.30188 │ 0.662253 │ 0.549602 │ 0.405031 │ 0.967761 │ 0.868514 │ 0.475268 │ 0.644624 │ 0.0152846 │ 0.153742 │ 0.855043 │ 0.535195 │ 0.122718 │ 0.120852 │ 0.447783 │ 0.157549 │ 0.246831 │\n",
+ "│ 94 │ 0.286892 │ 0.860191 │ 0.234009 │ 0.654314 │ 0.03576 │ 0.327378 │ 0.858997 │ 0.966634 │ 0.287739 │ 0.664859 │ 0.668162 │ 0.999837 │ 0.251666 │ 0.481451 │ 0.911759 │ 0.984338 │ 0.800379 │ 0.621215 │ 0.0309279 │ 0.0435778 │ 0.784397 │ 0.725739 │ 0.697913 │ 0.903341 │ 0.677785 │ 0.0550472 │ 0.184176 │ 0.659656 │ 0.375984 │ 0.115483 │ 0.780654 │ 0.499065 │ 0.497268 │ 0.608305 │ 0.789557 │ 0.634451 │ 0.654711 │ 0.064393 │ 0.690274 │ 0.376052 │ 0.33517 │ 0.125751 │ 0.89956 │ 0.736922 │ 0.122134 │ 0.232993 │ 0.542237 │ 0.983583 │ 0.19017 │ 0.22769 │ 0.446814 │ 0.880462 │ 0.283374 │ 0.74851 │ 0.35832 │ 0.435148 │ 0.977156 │ 0.911051 │ 0.232685 │ 0.693866 │ 0.405745 │ 0.110243 │ 0.594669 │ 0.815154 │ 0.569185 │ 0.827309 │ 0.367762 │ 0.374001 │ 0.794016 │ 0.367475 │ 0.183657 │ 0.64263 │ 0.800634 │ 0.809971 │ 0.232202 │ 0.726017 │ 0.550618 │ 0.689757 │ 0.066237 │ 0.218705 │ 0.49543 │ 0.0532699 │ 0.232517 │\n",
+ "│ 95 │ 0.762523 │ 0.0542611 │ 0.108823 │ 0.127457 │ 0.649579 │ 0.777691 │ 0.0945 │ 0.592004 │ 0.687948 │ 0.611934 │ 0.926688 │ 0.0223771 │ 0.792158 │ 0.319545 │ 0.239427 │ 0.136574 │ 0.279412 │ 0.5293 │ 0.198804 │ 0.951605 │ 0.332071 │ 0.052404 │ 0.761082 │ 0.941384 │ 0.360823 │ 0.727022 │ 0.694236 │ 0.217221 │ 0.517302 │ 0.137989 │ 0.382683 │ 0.516682 │ 0.0273436 │ 0.358914 │ 0.325977 │ 0.0547373 │ 0.609597 │ 0.980888 │ 0.273456 │ 0.0532361 │ 0.542837 │ 0.0837315 │ 0.431383 │ 0.820543 │ 0.969667 │ 0.930366 │ 0.81633 │ 0.549184 │ 0.288896 │ 0.421891 │ 0.429255 │ 0.212976 │ 0.774767 │ 0.68849 │ 0.897244 │ 0.130483 │ 0.927341 │ 0.220485 │ 0.544031 │ 0.810184 │ 0.0448566 │ 0.306898 │ 0.30188 │ 0.660923 │ 0.721688 │ 0.148359 │ 0.92096 │ 0.910263 │ 0.0856758 │ 0.184058 │ 0.879899 │ 0.797819 │ 0.630675 │ 0.482465 │ 0.736122 │ 0.826809 │ 0.215441 │ 0.372103 │ 0.253004 │ 0.794828 │ 0.412552 │ 0.108983 │ 0.0225282 │\n",
+ "│ 96 │ 0.12173 │ 0.215425 │ 0.96121 │ 0.486031 │ 0.455957 │ 0.842317 │ 0.605808 │ 0.380054 │ 0.0163276 │ 0.530926 │ 0.102426 │ 0.415345 │ 0.901303 │ 0.141939 │ 0.283323 │ 0.326317 │ 0.384437 │ 0.667797 │ 0.271977 │ 0.0610576 │ 0.72723 │ 0.0149813 │ 0.565326 │ 0.512474 │ 0.0700556 │ 0.482017 │ 0.0311834 │ 0.129381 │ 0.808303 │ 0.275073 │ 0.167881 │ 0.81439 │ 0.347019 │ 0.51895 │ 0.570866 │ 0.434214 │ 0.557136 │ 0.0355696 │ 0.0426792 │ 0.956796 │ 0.0610626 │ 0.604949 │ 0.108962 │ 0.0951331 │ 0.644703 │ 0.250493 │ 0.442453 │ 0.188148 │ 0.694041 │ 0.246715 │ 0.560341 │ 0.915796 │ 0.812703 │ 0.748743 │ 0.0905025 │ 0.355802 │ 0.523357 │ 0.558633 │ 0.192035 │ 0.606845 │ 0.139853 │ 0.948259 │ 0.470579 │ 0.494305 │ 0.684164 │ 0.971938 │ 0.285274 │ 0.703147 │ 0.960012 │ 0.406314 │ 0.646186 │ 0.0628213 │ 0.449112 │ 0.168545 │ 0.562227 │ 0.113115 │ 0.649923 │ 0.315862 │ 0.729933 │ 0.118675 │ 0.605344 │ 0.583898 │ 0.0048144 │\n",
+ "│ 97 │ 0.42203 │ 0.393003 │ 0.153029 │ 0.452593 │ 0.986399 │ 0.671772 │ 0.457919 │ 0.926908 │ 0.803482 │ 0.939011 │ 0.518598 │ 0.359615 │ 0.548051 │ 0.212636 │ 0.0731782 │ 0.68167 │ 0.864692 │ 0.873098 │ 0.261773 │ 0.63234 │ 0.860118 │ 0.212664 │ 0.490204 │ 0.594588 │ 0.362564 │ 0.0569334 │ 0.371773 │ 0.665372 │ 0.633885 │ 0.869438 │ 0.782921 │ 0.568278 │ 0.613711 │ 0.0646781 │ 0.568709 │ 0.0943753 │ 0.782212 │ 0.432347 │ 0.0244455 │ 0.95384 │ 0.797635 │ 0.140884 │ 0.879326 │ 0.37472 │ 0.747514 │ 0.180237 │ 0.695716 │ 0.619207 │ 0.531734 │ 0.33093 │ 0.196062 │ 0.687112 │ 0.633876 │ 0.354159 │ 0.481302 │ 0.811022 │ 0.578211 │ 0.336943 │ 0.0940363 │ 0.724985 │ 0.962264 │ 0.250931 │ 0.496936 │ 0.181407 │ 0.689202 │ 0.889266 │ 0.251657 │ 0.180193 │ 0.18819 │ 0.869222 │ 0.546458 │ 0.174806 │ 0.636397 │ 0.471196 │ 0.0329431 │ 0.767817 │ 0.737197 │ 0.626441 │ 0.996913 │ 0.17115 │ 0.57334 │ 0.895716 │ 0.431745 │\n",
+ "│ 98 │ 0.248061 │ 0.122138 │ 0.734757 │ 0.0606331 │ 0.468839 │ 0.519787 │ 0.520335 │ 0.82474 │ 0.117171 │ 0.0850115 │ 0.692088 │ 0.712345 │ 0.803026 │ 0.00596116 │ 0.822665 │ 0.49652 │ 0.595358 │ 0.696547 │ 0.565099 │ 0.166821 │ 0.986648 │ 0.548808 │ 0.113521 │ 0.240256 │ 0.796755 │ 0.143709 │ 0.64338 │ 0.517787 │ 0.88353 │ 0.340531 │ 0.42308 │ 0.451594 │ 0.721952 │ 0.266143 │ 0.291048 │ 0.28503 │ 0.451818 │ 0.123756 │ 0.671964 │ 0.313437 │ 0.92333 │ 0.786745 │ 0.871443 │ 0.893781 │ 0.465217 │ 0.354208 │ 0.544057 │ 0.968364 │ 0.988405 │ 0.135705 │ 0.501713 │ 0.328346 │ 0.0509031 │ 0.65112 │ 0.774361 │ 0.593005 │ 0.0993552 │ 0.553572 │ 0.909204 │ 0.190663 │ 0.902283 │ 0.203895 │ 0.36173 │ 0.539731 │ 0.0138681 │ 0.344721 │ 0.585383 │ 0.980568 │ 0.6058 │ 0.492842 │ 0.571414 │ 0.192626 │ 0.310981 │ 0.183664 │ 0.292063 │ 0.675411 │ 0.315551 │ 0.235098 │ 0.84903 │ 0.536033 │ 0.238773 │ 0.678753 │ 0.231479 │\n",
+ "│ 99 │ 0.954902 │ 0.781351 │ 0.960357 │ 0.879493 │ 0.039775 │ 0.212359 │ 0.554541 │ 0.25347 │ 0.991295 │ 0.972408 │ 0.414771 │ 0.916212 │ 0.101781 │ 0.899393 │ 0.946388 │ 0.134736 │ 0.844741 │ 0.177013 │ 0.346461 │ 0.448448 │ 0.206165 │ 0.418927 │ 0.186918 │ 0.954326 │ 0.977229 │ 0.0905327 │ 0.800384 │ 0.668382 │ 0.603604 │ 0.527407 │ 0.748646 │ 0.766678 │ 0.0758325 │ 0.396821 │ 0.433751 │ 0.357954 │ 0.214486 │ 0.846937 │ 0.596584 │ 0.0956016 │ 0.457306 │ 0.160344 │ 0.377366 │ 0.987179 │ 0.521804 │ 0.213785 │ 0.488711 │ 0.83219 │ 0.551184 │ 0.331853 │ 0.892448 │ 0.144073 │ 0.101325 │ 0.909182 │ 0.975881 │ 0.0280106 │ 0.882932 │ 0.972972 │ 0.431094 │ 0.224809 │ 0.495968 │ 0.693719 │ 0.563527 │ 0.226192 │ 0.113672 │ 0.22338 │ 0.0767187 │ 0.199073 │ 0.70545 │ 0.43567 │ 0.244866 │ 0.294578 │ 0.465644 │ 0.174379 │ 0.728899 │ 0.354953 │ 0.347611 │ 0.327741 │ 0.465346 │ 0.958826 │ 0.67066 │ 0.25833 │ 0.122299 │\n",
+ "│ 100 │ 0.560985 │ 0.836088 │ 0.636395 │ 0.646751 │ 0.777467 │ 0.380337 │ 0.161077 │ 0.211871 │ 0.939554 │ 0.161152 │ 0.26445 │ 0.352985 │ 0.0261203 │ 0.171109 │ 0.372271 │ 0.347078 │ 0.632896 │ 0.19739 │ 0.302938 │ 0.47801 │ 0.058978 │ 0.707095 │ 0.215833 │ 0.0338118 │ 0.429517 │ 0.292027 │ 0.263542 │ 0.579394 │ 0.837929 │ 0.337819 │ 0.998979 │ 0.834723 │ 0.324117 │ 0.191956 │ 0.691444 │ 0.197143 │ 0.5869 │ 0.764146 │ 0.883351 │ 0.732318 │ 0.126743 │ 0.15607 │ 0.191125 │ 0.87733 │ 0.0115159 │ 0.0588984 │ 0.0114437 │ 0.975808 │ 0.451482 │ 0.153821 │ 0.00852908 │ 0.852663 │ 0.785265 │ 0.00229688 │ 0.520861 │ 0.290748 │ 0.270761 │ 0.531064 │ 0.375883 │ 0.825527 │ 0.421109 │ 0.71135 │ 0.952632 │ 0.267159 │ 0.270503 │ 0.645644 │ 0.0915219 │ 0.739943 │ 0.328618 │ 0.92223 │ 0.589661 │ 0.535565 │ 0.205743 │ 0.852661 │ 0.656383 │ 0.0462211 │ 0.677539 │ 0.0066637 │ 0.297644 │ 0.853792 │ 0.37339 │ 0.878396 │ 0.131792 │"
]
},
"execution_count": 17,
@@ -713,29 +695,29 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 143.422 μs (1511 allocations: 194.41 KiB)\n"
+ " 135.301 μs (1511 allocations: 194.41 KiB)\n"
]
},
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 1,000 columns (omitted printing of 992 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 | 0.403865 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 | x21 | x22 | x23 | x24 | x25 | x26 | x27 | x28 | x29 | x30 | x31 | x32 | x33 | x34 | x35 | x36 | x37 | x38 | x39 | x40 | x41 | x42 | x43 | x44 | x45 | x46 | x47 | x48 | x49 | x50 | x51 | x52 | x53 | x54 | x55 | x56 | x57 | x58 | x59 | x60 | x61 | x62 | x63 | x64 | x65 | x66 | x67 | x68 | x69 | x70 | x71 | x72 | x73 | x74 | x75 | x76 | x77 | x78 | x79 | x80 | x81 | x82 | x83 | x84 | x85 | x86 | x87 | x88 | x89 | x90 | x91 | x92 | x93 | x94 | x95 | x96 | x97 | x98 | x99 | x100 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 1,000 columns (omitted printing of 900 columns)
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 | 0.192599 | 0.00604097 | 0.581288 | 0.746245 | 0.385509 | 0.355455 | 0.929221 | 0.729291 | 0.778783 | 0.598102 | 0.498373 | 0.0278266 | 0.0462616 | 0.0804585 | 0.486005 | 0.829665 | 0.605489 | 0.922619 | 0.615983 | 0.975146 | 0.218467 | 0.214458 | 0.201525 | 0.388645 | 0.558404 | 0.163782 | 0.437683 | 0.897702 | 0.0696074 | 0.656873 | 0.096646 | 0.604482 | 0.826148 | 0.90222 | 0.213158 | 0.145633 | 0.715524 | 0.821202 | 0.851274 | 0.809465 | 0.938894 | 0.833493 | 0.0128205 | 0.911447 | 0.572925 | 0.492402 | 0.70685 | 0.391735 | 0.379956 | 0.894197 | 0.319608 | 0.282724 | 0.662529 | 0.751371 | 0.0515758 | 0.0554555 | 0.407253 | 0.714758 | 0.930454 | 0.34133 | 0.409226 | 0.0593862 | 0.943453 | 0.396289 | 0.611359 | 0.630375 | 0.0122984 | 0.948587 | 0.395367 | 0.912241 | 0.192444 | 0.69041 | 0.498202 | 0.157421 | 0.0875531 | 0.907202 | 0.671311 | 0.84797 | 0.990317 | 0.722969 |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|ccccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & \\\\\n",
+ "\\begin{tabular}{r|ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20 & x21 & x22 & x23 & x24 & x25 & x26 & x27 & x28 & x29 & x30 & x31 & x32 & x33 & x34 & x35 & x36 & x37 & x38 & x39 & x40 & x41 & x42 & x43 & x44 & x45 & x46 & x47 & x48 & x49 & x50 & x51 & x52 & x53 & x54 & x55 & x56 & x57 & x58 & x59 & x60 & x61 & x62 & x63 & x64 & x65 & x66 & x67 & x68 & x69 & x70 & x71 & x72 & x73 & x74 & x75 & x76 & x77 & x78 & x79 & x80 & x81 & x82 & x83 & x84 & x85 & x86 & x87 & x88 & x89 & x90 & x91 & x92 & x93 & x94 & x95 & x96 & x97 & x98 & x99 & x100 & \\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & 0.403865 & $\\dots$ \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 & 0.192599 & 0.00604097 & 0.581288 & 0.746245 & 0.385509 & 0.355455 & 0.929221 & 0.729291 & 0.778783 & 0.598102 & 0.498373 & 0.0278266 & 0.0462616 & 0.0804585 & 0.486005 & 0.829665 & 0.605489 & 0.922619 & 0.615983 & 0.975146 & 0.218467 & 0.214458 & 0.201525 & 0.388645 & 0.558404 & 0.163782 & 0.437683 & 0.897702 & 0.0696074 & 0.656873 & 0.096646 & 0.604482 & 0.826148 & 0.90222 & 0.213158 & 0.145633 & 0.715524 & 0.821202 & 0.851274 & 0.809465 & 0.938894 & 0.833493 & 0.0128205 & 0.911447 & 0.572925 & 0.492402 & 0.70685 & 0.391735 & 0.379956 & 0.894197 & 0.319608 & 0.282724 & 0.662529 & 0.751371 & 0.0515758 & 0.0554555 & 0.407253 & 0.714758 & 0.930454 & 0.34133 & 0.409226 & 0.0593862 & 0.943453 & 0.396289 & 0.611359 & 0.630375 & 0.0122984 & 0.948587 & 0.395367 & 0.912241 & 0.192444 & 0.69041 & 0.498202 & 0.157421 & 0.0875531 & 0.907202 & 0.671311 & 0.84797 & 0.990317 & 0.722969 & $\\dots$ \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "1×1000 DataFrame. Omitted printing of 994 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │"
+ "1×1000 DataFrame. Omitted printing of 911 columns\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │ x21 │ x22 │ x23 │ x24 │ x25 │ x26 │ x27 │ x28 │ x29 │ x30 │ x31 │ x32 │ x33 │ x34 │ x35 │ x36 │ x37 │ x38 │ x39 │ x40 │ x41 │ x42 │ x43 │ x44 │ x45 │ x46 │ x47 │ x48 │ x49 │ x50 │ x51 │ x52 │ x53 │ x54 │ x55 │ x56 │ x57 │ x58 │ x59 │ x60 │ x61 │ x62 │ x63 │ x64 │ x65 │ x66 │ x67 │ x68 │ x69 │ x70 │ x71 │ x72 │ x73 │ x74 │ x75 │ x76 │ x77 │ x78 │ x79 │ x80 │ x81 │ x82 │ x83 │ x84 │ x85 │ x86 │ x87 │ x88 │ x89 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼────────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼───────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │ 0.192599 │ 0.00604097 │ 0.581288 │ 0.746245 │ 0.385509 │ 0.355455 │ 0.929221 │ 0.729291 │ 0.778783 │ 0.598102 │ 0.498373 │ 0.0278266 │ 0.0462616 │ 0.0804585 │ 0.486005 │ 0.829665 │ 0.605489 │ 0.922619 │ 0.615983 │ 0.975146 │ 0.218467 │ 0.214458 │ 0.201525 │ 0.388645 │ 0.558404 │ 0.163782 │ 0.437683 │ 0.897702 │ 0.0696074 │ 0.656873 │ 0.096646 │ 0.604482 │ 0.826148 │ 0.90222 │ 0.213158 │ 0.145633 │ 0.715524 │ 0.821202 │ 0.851274 │ 0.809465 │ 0.938894 │ 0.833493 │ 0.0128205 │ 0.911447 │ 0.572925 │ 0.492402 │ 0.70685 │ 0.391735 │ 0.379956 │ 0.894197 │ 0.319608 │ 0.282724 │ 0.662529 │ 0.751371 │ 0.0515758 │ 0.0554555 │ 0.407253 │ 0.714758 │ 0.930454 │ 0.34133 │ 0.409226 │ 0.0593862 │ 0.943453 │ 0.396289 │ 0.611359 │ 0.630375 │ 0.0122984 │ 0.948587 │ 0.395367 │"
]
},
"execution_count": 18,
@@ -756,29 +738,29 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 22.618 ns (1 allocation: 32 bytes)\n"
+ " 24.698 ns (1 allocation: 32 bytes)\n"
]
},
{
"data": {
"text/html": [
- "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 1,000 columns (omitted printing of 992 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 | 0.403865 |
---|
"
+ "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 | x21 | x22 | x23 | x24 | x25 | x26 | x27 | x28 | x29 | x30 | x31 | x32 | x33 | x34 | x35 | x36 | x37 | x38 | x39 | x40 | x41 | x42 | x43 | x44 | x45 | x46 | x47 | x48 | x49 | x50 | x51 | x52 | x53 | x54 | x55 | x56 | x57 | x58 | x59 | x60 | x61 | x62 | x63 | x64 | x65 | x66 | x67 | x68 | x69 | x70 | x71 | x72 | x73 | x74 | x75 | x76 | x77 | x78 | x79 | x80 | x81 | x82 | x83 | x84 | x85 | x86 | x87 | x88 | x89 | x90 | x91 | x92 | x93 | x94 | x95 | x96 | x97 | x98 | x99 | x100 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 1,000 columns (omitted printing of 900 columns)
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 | 0.192599 | 0.00604097 | 0.581288 | 0.746245 | 0.385509 | 0.355455 | 0.929221 | 0.729291 | 0.778783 | 0.598102 | 0.498373 | 0.0278266 | 0.0462616 | 0.0804585 | 0.486005 | 0.829665 | 0.605489 | 0.922619 | 0.615983 | 0.975146 | 0.218467 | 0.214458 | 0.201525 | 0.388645 | 0.558404 | 0.163782 | 0.437683 | 0.897702 | 0.0696074 | 0.656873 | 0.096646 | 0.604482 | 0.826148 | 0.90222 | 0.213158 | 0.145633 | 0.715524 | 0.821202 | 0.851274 | 0.809465 | 0.938894 | 0.833493 | 0.0128205 | 0.911447 | 0.572925 | 0.492402 | 0.70685 | 0.391735 | 0.379956 | 0.894197 | 0.319608 | 0.282724 | 0.662529 | 0.751371 | 0.0515758 | 0.0554555 | 0.407253 | 0.714758 | 0.930454 | 0.34133 | 0.409226 | 0.0593862 | 0.943453 | 0.396289 | 0.611359 | 0.630375 | 0.0122984 | 0.948587 | 0.395367 | 0.912241 | 0.192444 | 0.69041 | 0.498202 | 0.157421 | 0.0875531 | 0.907202 | 0.671311 | 0.84797 | 0.990317 | 0.722969 |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|ccccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & \\\\\n",
+ "\\begin{tabular}{r|ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20 & x21 & x22 & x23 & x24 & x25 & x26 & x27 & x28 & x29 & x30 & x31 & x32 & x33 & x34 & x35 & x36 & x37 & x38 & x39 & x40 & x41 & x42 & x43 & x44 & x45 & x46 & x47 & x48 & x49 & x50 & x51 & x52 & x53 & x54 & x55 & x56 & x57 & x58 & x59 & x60 & x61 & x62 & x63 & x64 & x65 & x66 & x67 & x68 & x69 & x70 & x71 & x72 & x73 & x74 & x75 & x76 & x77 & x78 & x79 & x80 & x81 & x82 & x83 & x84 & x85 & x86 & x87 & x88 & x89 & x90 & x91 & x92 & x93 & x94 & x95 & x96 & x97 & x98 & x99 & x100 & \\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & 0.403865 & $\\dots$ \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 & 0.192599 & 0.00604097 & 0.581288 & 0.746245 & 0.385509 & 0.355455 & 0.929221 & 0.729291 & 0.778783 & 0.598102 & 0.498373 & 0.0278266 & 0.0462616 & 0.0804585 & 0.486005 & 0.829665 & 0.605489 & 0.922619 & 0.615983 & 0.975146 & 0.218467 & 0.214458 & 0.201525 & 0.388645 & 0.558404 & 0.163782 & 0.437683 & 0.897702 & 0.0696074 & 0.656873 & 0.096646 & 0.604482 & 0.826148 & 0.90222 & 0.213158 & 0.145633 & 0.715524 & 0.821202 & 0.851274 & 0.809465 & 0.938894 & 0.833493 & 0.0128205 & 0.911447 & 0.572925 & 0.492402 & 0.70685 & 0.391735 & 0.379956 & 0.894197 & 0.319608 & 0.282724 & 0.662529 & 0.751371 & 0.0515758 & 0.0554555 & 0.407253 & 0.714758 & 0.930454 & 0.34133 & 0.409226 & 0.0593862 & 0.943453 & 0.396289 & 0.611359 & 0.630375 & 0.0122984 & 0.948587 & 0.395367 & 0.912241 & 0.192444 & 0.69041 & 0.498202 & 0.157421 & 0.0875531 & 0.907202 & 0.671311 & 0.84797 & 0.990317 & 0.722969 & $\\dots$ \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "DataFrameRow. Omitted printing of 994 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │"
+ "DataFrameRow. Omitted printing of 911 columns\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │ x21 │ x22 │ x23 │ x24 │ x25 │ x26 │ x27 │ x28 │ x29 │ x30 │ x31 │ x32 │ x33 │ x34 │ x35 │ x36 │ x37 │ x38 │ x39 │ x40 │ x41 │ x42 │ x43 │ x44 │ x45 │ x46 │ x47 │ x48 │ x49 │ x50 │ x51 │ x52 │ x53 │ x54 │ x55 │ x56 │ x57 │ x58 │ x59 │ x60 │ x61 │ x62 │ x63 │ x64 │ x65 │ x66 │ x67 │ x68 │ x69 │ x70 │ x71 │ x72 │ x73 │ x74 │ x75 │ x76 │ x77 │ x78 │ x79 │ x80 │ x81 │ x82 │ x83 │ x84 │ x85 │ x86 │ x87 │ x88 │ x89 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼────────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼───────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │ 0.192599 │ 0.00604097 │ 0.581288 │ 0.746245 │ 0.385509 │ 0.355455 │ 0.929221 │ 0.729291 │ 0.778783 │ 0.598102 │ 0.498373 │ 0.0278266 │ 0.0462616 │ 0.0804585 │ 0.486005 │ 0.829665 │ 0.605489 │ 0.922619 │ 0.615983 │ 0.975146 │ 0.218467 │ 0.214458 │ 0.201525 │ 0.388645 │ 0.558404 │ 0.163782 │ 0.437683 │ 0.897702 │ 0.0696074 │ 0.656873 │ 0.096646 │ 0.604482 │ 0.826148 │ 0.90222 │ 0.213158 │ 0.145633 │ 0.715524 │ 0.821202 │ 0.851274 │ 0.809465 │ 0.938894 │ 0.833493 │ 0.0128205 │ 0.911447 │ 0.572925 │ 0.492402 │ 0.70685 │ 0.391735 │ 0.379956 │ 0.894197 │ 0.319608 │ 0.282724 │ 0.662529 │ 0.751371 │ 0.0515758 │ 0.0554555 │ 0.407253 │ 0.714758 │ 0.930454 │ 0.34133 │ 0.409226 │ 0.0593862 │ 0.943453 │ 0.396289 │ 0.611359 │ 0.630375 │ 0.0122984 │ 0.948587 │ 0.395367 │"
]
},
"execution_count": 19,
@@ -799,29 +781,29 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 23.132 ns (1 allocation: 48 bytes)\n"
+ " 25.026 ns (1 allocation: 48 bytes)\n"
]
},
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 1,000 columns (omitted printing of 992 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 | 0.403865 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 | x21 | x22 | x23 | x24 | x25 | x26 | x27 | x28 | x29 | x30 | x31 | x32 | x33 | x34 | x35 | x36 | x37 | x38 | x39 | x40 | x41 | x42 | x43 | x44 | x45 | x46 | x47 | x48 | x49 | x50 | x51 | x52 | x53 | x54 | x55 | x56 | x57 | x58 | x59 | x60 | x61 | x62 | x63 | x64 | x65 | x66 | x67 | x68 | x69 | x70 | x71 | x72 | x73 | x74 | x75 | x76 | x77 | x78 | x79 | x80 | x81 | x82 | x83 | x84 | x85 | x86 | x87 | x88 | x89 | x90 | x91 | x92 | x93 | x94 | x95 | x96 | x97 | x98 | x99 | x100 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 1,000 columns (omitted printing of 900 columns)
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 | 0.192599 | 0.00604097 | 0.581288 | 0.746245 | 0.385509 | 0.355455 | 0.929221 | 0.729291 | 0.778783 | 0.598102 | 0.498373 | 0.0278266 | 0.0462616 | 0.0804585 | 0.486005 | 0.829665 | 0.605489 | 0.922619 | 0.615983 | 0.975146 | 0.218467 | 0.214458 | 0.201525 | 0.388645 | 0.558404 | 0.163782 | 0.437683 | 0.897702 | 0.0696074 | 0.656873 | 0.096646 | 0.604482 | 0.826148 | 0.90222 | 0.213158 | 0.145633 | 0.715524 | 0.821202 | 0.851274 | 0.809465 | 0.938894 | 0.833493 | 0.0128205 | 0.911447 | 0.572925 | 0.492402 | 0.70685 | 0.391735 | 0.379956 | 0.894197 | 0.319608 | 0.282724 | 0.662529 | 0.751371 | 0.0515758 | 0.0554555 | 0.407253 | 0.714758 | 0.930454 | 0.34133 | 0.409226 | 0.0593862 | 0.943453 | 0.396289 | 0.611359 | 0.630375 | 0.0122984 | 0.948587 | 0.395367 | 0.912241 | 0.192444 | 0.69041 | 0.498202 | 0.157421 | 0.0875531 | 0.907202 | 0.671311 | 0.84797 | 0.990317 | 0.722969 |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|ccccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & \\\\\n",
+ "\\begin{tabular}{r|ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20 & x21 & x22 & x23 & x24 & x25 & x26 & x27 & x28 & x29 & x30 & x31 & x32 & x33 & x34 & x35 & x36 & x37 & x38 & x39 & x40 & x41 & x42 & x43 & x44 & x45 & x46 & x47 & x48 & x49 & x50 & x51 & x52 & x53 & x54 & x55 & x56 & x57 & x58 & x59 & x60 & x61 & x62 & x63 & x64 & x65 & x66 & x67 & x68 & x69 & x70 & x71 & x72 & x73 & x74 & x75 & x76 & x77 & x78 & x79 & x80 & x81 & x82 & x83 & x84 & x85 & x86 & x87 & x88 & x89 & x90 & x91 & x92 & x93 & x94 & x95 & x96 & x97 & x98 & x99 & x100 & \\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & 0.403865 & $\\dots$ \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 & 0.192599 & 0.00604097 & 0.581288 & 0.746245 & 0.385509 & 0.355455 & 0.929221 & 0.729291 & 0.778783 & 0.598102 & 0.498373 & 0.0278266 & 0.0462616 & 0.0804585 & 0.486005 & 0.829665 & 0.605489 & 0.922619 & 0.615983 & 0.975146 & 0.218467 & 0.214458 & 0.201525 & 0.388645 & 0.558404 & 0.163782 & 0.437683 & 0.897702 & 0.0696074 & 0.656873 & 0.096646 & 0.604482 & 0.826148 & 0.90222 & 0.213158 & 0.145633 & 0.715524 & 0.821202 & 0.851274 & 0.809465 & 0.938894 & 0.833493 & 0.0128205 & 0.911447 & 0.572925 & 0.492402 & 0.70685 & 0.391735 & 0.379956 & 0.894197 & 0.319608 & 0.282724 & 0.662529 & 0.751371 & 0.0515758 & 0.0554555 & 0.407253 & 0.714758 & 0.930454 & 0.34133 & 0.409226 & 0.0593862 & 0.943453 & 0.396289 & 0.611359 & 0.630375 & 0.0122984 & 0.948587 & 0.395367 & 0.912241 & 0.192444 & 0.69041 & 0.498202 & 0.157421 & 0.0875531 & 0.907202 & 0.671311 & 0.84797 & 0.990317 & 0.722969 & $\\dots$ \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "1×1000 SubDataFrame. Omitted printing of 994 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │"
+ "1×1000 SubDataFrame. Omitted printing of 911 columns\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │ x21 │ x22 │ x23 │ x24 │ x25 │ x26 │ x27 │ x28 │ x29 │ x30 │ x31 │ x32 │ x33 │ x34 │ x35 │ x36 │ x37 │ x38 │ x39 │ x40 │ x41 │ x42 │ x43 │ x44 │ x45 │ x46 │ x47 │ x48 │ x49 │ x50 │ x51 │ x52 │ x53 │ x54 │ x55 │ x56 │ x57 │ x58 │ x59 │ x60 │ x61 │ x62 │ x63 │ x64 │ x65 │ x66 │ x67 │ x68 │ x69 │ x70 │ x71 │ x72 │ x73 │ x74 │ x75 │ x76 │ x77 │ x78 │ x79 │ x80 │ x81 │ x82 │ x83 │ x84 │ x85 │ x86 │ x87 │ x88 │ x89 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼────────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┼───────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │ 0.192599 │ 0.00604097 │ 0.581288 │ 0.746245 │ 0.385509 │ 0.355455 │ 0.929221 │ 0.729291 │ 0.778783 │ 0.598102 │ 0.498373 │ 0.0278266 │ 0.0462616 │ 0.0804585 │ 0.486005 │ 0.829665 │ 0.605489 │ 0.922619 │ 0.615983 │ 0.975146 │ 0.218467 │ 0.214458 │ 0.201525 │ 0.388645 │ 0.558404 │ 0.163782 │ 0.437683 │ 0.897702 │ 0.0696074 │ 0.656873 │ 0.096646 │ 0.604482 │ 0.826148 │ 0.90222 │ 0.213158 │ 0.145633 │ 0.715524 │ 0.821202 │ 0.851274 │ 0.809465 │ 0.938894 │ 0.833493 │ 0.0128205 │ 0.911447 │ 0.572925 │ 0.492402 │ 0.70685 │ 0.391735 │ 0.379956 │ 0.894197 │ 0.319608 │ 0.282724 │ 0.662529 │ 0.751371 │ 0.0515758 │ 0.0554555 │ 0.407253 │ 0.714758 │ 0.930454 │ 0.34133 │ 0.409226 │ 0.0593862 │ 0.943453 │ 0.396289 │ 0.611359 │ 0.630375 │ 0.0122984 │ 0.948587 │ 0.395367 │"
]
},
"execution_count": 20,
@@ -842,29 +824,29 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 4.847 μs (55 allocations: 7.23 KiB)\n"
+ " 4.486 μs (55 allocations: 7.23 KiB)\n"
]
},
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 20 columns (omitted printing of 12 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 | 0.403865 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 20 columns
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|ccccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & \\\\\n",
+ "\\begin{tabular}{r|cccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20\\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & 0.403865 & $\\dots$ \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "1×20 DataFrame. Omitted printing of 14 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │"
+ "1×20 DataFrame\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │"
]
},
"execution_count": 21,
@@ -885,29 +867,29 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 26.216 ns (2 allocations: 80 bytes)\n"
+ " 27.766 ns (2 allocations: 80 bytes)\n"
]
},
{
"data": {
"text/html": [
- "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 20 columns (omitted printing of 12 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 | 0.403865 |
---|
"
+ "DataFrameRow
| x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 20 columns
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|ccccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & \\\\\n",
+ "\\begin{tabular}{r|cccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20\\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & 0.403865 & $\\dots$ \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "DataFrameRow. Omitted printing of 14 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │"
+ "DataFrameRow\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │"
]
},
"execution_count": 22,
@@ -928,29 +910,29 @@
"name": "stdout",
"output_type": "stream",
"text": [
- " 26.837 ns (2 allocations: 96 bytes)\n"
+ " 30.614 ns (2 allocations: 96 bytes)\n"
]
},
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 20 columns (omitted printing of 12 columns)
1 | 0.469427 | 0.893605 | 0.348301 | 0.189853 | 0.602694 | 0.427064 | 0.120058 | 0.403865 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10 | x11 | x12 | x13 | x14 | x15 | x16 | x17 | x18 | x19 | x20 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 | Float64 |
---|
1 rows × 20 columns
1 | 0.691238 | 0.502941 | 0.113297 | 0.328738 | 0.13378 | 0.441278 | 0.685002 | 0.0538219 | 0.0761798 | 0.769235 | 0.284291 | 0.171352 | 0.754563 | 0.648736 | 0.0953225 | 0.775889 | 0.841043 | 0.311933 | 0.56814 | 0.577725 |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|ccccccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & \\\\\n",
+ "\\begin{tabular}{r|cccccccccccccccccccc}\n",
+ "\t& x1 & x2 & x3 & x4 & x5 & x6 & x7 & x8 & x9 & x10 & x11 & x12 & x13 & x14 & x15 & x16 & x17 & x18 & x19 & x20\\\\\n",
"\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & \\\\\n",
+ "\t& Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.469427 & 0.893605 & 0.348301 & 0.189853 & 0.602694 & 0.427064 & 0.120058 & 0.403865 & $\\dots$ \\\\\n",
+ "\t1 & 0.691238 & 0.502941 & 0.113297 & 0.328738 & 0.13378 & 0.441278 & 0.685002 & 0.0538219 & 0.0761798 & 0.769235 & 0.284291 & 0.171352 & 0.754563 & 0.648736 & 0.0953225 & 0.775889 & 0.841043 & 0.311933 & 0.56814 & 0.577725 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "1×20 SubDataFrame. Omitted printing of 14 columns\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤\n",
- "│ 1 │ 0.469427 │ 0.893605 │ 0.348301 │ 0.189853 │ 0.602694 │ 0.427064 │"
+ "1×20 SubDataFrame\n",
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x6 │ x7 │ x8 │ x9 │ x10 │ x11 │ x12 │ x13 │ x14 │ x15 │ x16 │ x17 │ x18 │ x19 │ x20 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼──────────┼───────────┼───────────┼──────────┼──────────┼──────────┼──────────┼──────────┼───────────┼──────────┼──────────┼──────────┼─────────┼──────────┤\n",
+ "│ 1 │ 0.691238 │ 0.502941 │ 0.113297 │ 0.328738 │ 0.13378 │ 0.441278 │ 0.685002 │ 0.0538219 │ 0.0761798 │ 0.769235 │ 0.284291 │ 0.171352 │ 0.754563 │ 0.648736 │ 0.0953225 │ 0.775889 │ 0.841043 │ 0.311933 │ 0.56814 │ 0.577725 │"
]
},
"execution_count": 23,
@@ -964,10 +946,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/12_pitfalls.ipynb b/12_pitfalls.ipynb
index de4c07f..5c7fb38 100644
--- a/12_pitfalls.ipynb
+++ b/12_pitfalls.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -39,7 +39,7 @@
{
"data": {
"text/html": [
- " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 5 columns
1 | 0.845693 | 0.431133 | 0.40237 | 0.378532 | 0.505309 |
---|
2 | 0.335637 | 0.363309 | 0.808961 | 0.253146 | 0.642472 |
---|
3 | 0.836706 | 0.982497 | 0.541213 | 0.00189648 | 0.989832 |
---|
"
+ " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
3 rows × 5 columns
1 | 0.492559 | 0.243183 | 0.966703 | 0.693184 | 0.92395 |
---|
2 | 0.0928541 | 0.665956 | 0.355291 | 0.249962 | 0.347599 |
---|
3 | 0.552664 | 0.403156 | 0.351879 | 0.963344 | 0.760738 |
---|
"
],
"text/latex": [
"\\begin{tabular}{r|ccccc}\n",
@@ -47,19 +47,19 @@
"\t\\hline\n",
"\t& Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
"\t\\hline\n",
- "\t1 & 0.845693 & 0.431133 & 0.40237 & 0.378532 & 0.505309 \\\\\n",
- "\t2 & 0.335637 & 0.363309 & 0.808961 & 0.253146 & 0.642472 \\\\\n",
- "\t3 & 0.836706 & 0.982497 & 0.541213 & 0.00189648 & 0.989832 \\\\\n",
+ "\t1 & 0.492559 & 0.243183 & 0.966703 & 0.693184 & 0.92395 \\\\\n",
+ "\t2 & 0.0928541 & 0.665956 & 0.355291 & 0.249962 & 0.347599 \\\\\n",
+ "\t3 & 0.552664 & 0.403156 & 0.351879 & 0.963344 & 0.760738 \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
"3×5 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼──────────┼──────────┼──────────┼────────────┼──────────┤\n",
- "│ 1 │ 0.845693 │ 0.431133 │ 0.40237 │ 0.378532 │ 0.505309 │\n",
- "│ 2 │ 0.335637 │ 0.363309 │ 0.808961 │ 0.253146 │ 0.642472 │\n",
- "│ 3 │ 0.836706 │ 0.982497 │ 0.541213 │ 0.00189648 │ 0.989832 │"
+ "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
+ "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
+ "├─────┼───────────┼──────────┼──────────┼──────────┼──────────┤\n",
+ "│ 1 │ 0.492559 │ 0.243183 │ 0.966703 │ 0.693184 │ 0.92395 │\n",
+ "│ 2 │ 0.0928541 │ 0.665956 │ 0.355291 │ 0.249962 │ 0.347599 │\n",
+ "│ 3 │ 0.552664 │ 0.403156 │ 0.351879 │ 0.963344 │ 0.760738 │"
]
},
"execution_count": 2,
@@ -151,7 +151,7 @@
}
],
"source": [
- "all(x[i] === y[i] for i in ncol(x)) # the columns are also not the same"
+ "all(x[!, i] === y[!, i] for i in ncol(x)) # the columns are also not the same"
]
},
{
@@ -211,7 +211,7 @@
}
],
"source": [
- "y === df[:y] # different object"
+ "y === df.y # different object"
]
},
{
@@ -231,7 +231,7 @@
}
],
"source": [
- "typeof(x), typeof(df[:x]) # range is converted to a vector"
+ "typeof(x), typeof(df.x) # range is converted to a vector"
]
},
{
@@ -338,7 +338,7 @@
}
],
"source": [
- "select(df, :y)[1] === y # not the same"
+ "select(df, :y)[!, 1] === y # not the same"
]
},
{
@@ -358,7 +358,7 @@
}
],
"source": [
- "select(df, :y, copycols=false)[1] === y # the same"
+ "select(df, :y, copycols=false)[!, 1] === y # the same"
]
},
{
@@ -500,7 +500,7 @@
}
],
"source": [
- "x[1:3, 1]=[2,2,2]\n",
+ "x[1:3, 1] = [2,2,2]\n",
"g # well - it is wrong now, g is only a view"
]
},
@@ -596,18 +596,18 @@
" [1] throw_boundserror(::Array{Int64,1}, ::Tuple{UnitRange{Int64}}) at .\\abstractarray.jl:484",
" [2] checkbounds at .\\abstractarray.jl:449 [inlined]",
" [3] view(::Array{Int64,1}, ::UnitRange{Int64}) at .\\subarray.jl:155",
- " [4] view at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\subdataframe\\subdataframe.jl:83 [inlined]",
- " [5] getindex at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\subdataframe\\subdataframe.jl:101 [inlined]",
- " [6] getindex at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\iteration.jl:159 [inlined]",
+ " [4] view at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\subdataframe\\subdataframe.jl:90 [inlined]",
+ " [5] getindex at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\subdataframe\\subdataframe.jl:127 [inlined]",
+ " [6] getindex at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\iteration.jl:159 [inlined]",
" [7] iterate(::DataFrames.DataFrameColumns{SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}},Pair{Symbol,AbstractArray{T,1} where T}}, ::Tuple{Base.OneTo{Int64}}) at .\\abstractarray.jl:860",
" [8] iterate at .\\abstractarray.jl:858 [inlined]",
- " [9] getmaxwidths(::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}, ::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::UnitRange{Int64}, ::UnitRange{Int64}, ::Symbol, ::Nothing) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\show.jl:107",
- " [10] #_show#286(::Bool, ::Bool, ::Bool, ::Symbol, ::Bool, ::Nothing, ::Function, ::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\show.jl:532",
+ " [9] getmaxwidths(::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}, ::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::UnitRange{Int64}, ::UnitRange{Int64}, ::Symbol, ::Nothing) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\show.jl:107",
+ " [10] #_show#302(::Bool, ::Bool, ::Bool, ::Symbol, ::Bool, ::Nothing, ::Function, ::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\show.jl:536",
" [11] #_show at .\\none:0 [inlined]",
- " [12] #show#287 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\show.jl:604 [inlined]",
+ " [12] #show#303 at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\show.jl:608 [inlined]",
" [13] #show at .\\none:0 [inlined]",
- " [14] #show#300(::Bool, ::Bool, ::Bool, ::Symbol, ::Bool, ::Function, ::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::MIME{Symbol(\"text/plain\")}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\io.jl:53",
- " [15] show(::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::MIME{Symbol(\"text/plain\")}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\abstractdataframe\\io.jl:53",
+ " [14] #show#316(::Bool, ::Bool, ::Bool, ::Symbol, ::Bool, ::Function, ::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::MIME{Symbol(\"text/plain\")}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\io.jl:53",
+ " [15] show(::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::MIME{Symbol(\"text/plain\")}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\GoFnP\\src\\abstractdataframe\\io.jl:53",
" [16] limitstringmime(::MIME{Symbol(\"text/plain\")}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\IJulia\\gI2uA\\src\\inline.jl:37",
" [17] display_mimestring(::MIME{Symbol(\"text/plain\")}, ::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\IJulia\\gI2uA\\src\\display.jl:67",
" [18] display_dict(::SubDataFrame{DataFrame,DataFrames.Index,UnitRange{Int64}}) at C:\\Users\\bogum\\.julia\\packages\\IJulia\\gI2uA\\src\\display.jl:96",
@@ -629,148 +629,13 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "### Remember that you can filter columns of a `DataFrame` using booleans"
+ "### Single column selection for `DataFrame` creates aliases with `!` and `getproperty` syntax and copies with `:`"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
5 rows × 5 columns
1 | 0.236033 | 0.210968 | 0.555751 | 0.209472 | 0.0769509 |
---|
2 | 0.346517 | 0.951916 | 0.437108 | 0.251379 | 0.640396 |
---|
3 | 0.312707 | 0.999905 | 0.424718 | 0.0203749 | 0.873544 |
---|
4 | 0.00790928 | 0.251662 | 0.773223 | 0.287702 | 0.278582 |
---|
5 | 0.488613 | 0.986666 | 0.28119 | 0.859512 | 0.751313 |
---|
"
- ],
- "text/latex": [
- "\\begin{tabular}{r|ccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5\\\\\n",
- "\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
- "\t\\hline\n",
- "\t1 & 0.236033 & 0.210968 & 0.555751 & 0.209472 & 0.0769509 \\\\\n",
- "\t2 & 0.346517 & 0.951916 & 0.437108 & 0.251379 & 0.640396 \\\\\n",
- "\t3 & 0.312707 & 0.999905 & 0.424718 & 0.0203749 & 0.873544 \\\\\n",
- "\t4 & 0.00790928 & 0.251662 & 0.773223 & 0.287702 & 0.278582 \\\\\n",
- "\t5 & 0.488613 & 0.986666 & 0.28119 & 0.859512 & 0.751313 \\\\\n",
- "\\end{tabular}\n"
- ],
- "text/plain": [
- "5×5 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼────────────┼──────────┼──────────┼───────────┼───────────┤\n",
- "│ 1 │ 0.236033 │ 0.210968 │ 0.555751 │ 0.209472 │ 0.0769509 │\n",
- "│ 2 │ 0.346517 │ 0.951916 │ 0.437108 │ 0.251379 │ 0.640396 │\n",
- "│ 3 │ 0.312707 │ 0.999905 │ 0.424718 │ 0.0203749 │ 0.873544 │\n",
- "│ 4 │ 0.00790928 │ 0.251662 │ 0.773223 │ 0.287702 │ 0.278582 │\n",
- "│ 5 │ 0.488613 │ 0.986666 │ 0.28119 │ 0.859512 │ 0.751313 │"
- ]
- },
- "execution_count": 20,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "using Random\n",
- "Random.seed!(1)\n",
- "x = DataFrame(rand(5, 5))"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 21,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- " | x1 | x4 |
---|
| Float64 | Float64 |
---|
5 rows × 2 columns
1 | 0.236033 | 0.209472 |
---|
2 | 0.346517 | 0.251379 |
---|
3 | 0.312707 | 0.0203749 |
---|
4 | 0.00790928 | 0.287702 |
---|
5 | 0.488613 | 0.859512 |
---|
"
- ],
- "text/latex": [
- "\\begin{tabular}{r|cc}\n",
- "\t& x1 & x4\\\\\n",
- "\t\\hline\n",
- "\t& Float64 & Float64\\\\\n",
- "\t\\hline\n",
- "\t1 & 0.236033 & 0.209472 \\\\\n",
- "\t2 & 0.346517 & 0.251379 \\\\\n",
- "\t3 & 0.312707 & 0.0203749 \\\\\n",
- "\t4 & 0.00790928 & 0.287702 \\\\\n",
- "\t5 & 0.488613 & 0.859512 \\\\\n",
- "\\end{tabular}\n"
- ],
- "text/plain": [
- "5×2 DataFrame\n",
- "│ Row │ x1 │ x4 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼────────────┼───────────┤\n",
- "│ 1 │ 0.236033 │ 0.209472 │\n",
- "│ 2 │ 0.346517 │ 0.251379 │\n",
- "│ 3 │ 0.312707 │ 0.0203749 │\n",
- "│ 4 │ 0.00790928 │ 0.287702 │\n",
- "│ 5 │ 0.488613 │ 0.859512 │"
- ]
- },
- "execution_count": 21,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "x[x[:x1] .< 0.25] # well - we have filtered columns not rows by accident as you can select columns using booleans"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 22,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- " | x1 | x2 | x3 | x4 | x5 |
---|
| Float64 | Float64 | Float64 | Float64 | Float64 |
---|
2 rows × 5 columns
1 | 0.236033 | 0.210968 | 0.555751 | 0.209472 | 0.0769509 |
---|
2 | 0.00790928 | 0.251662 | 0.773223 | 0.287702 | 0.278582 |
---|
"
- ],
- "text/latex": [
- "\\begin{tabular}{r|ccccc}\n",
- "\t& x1 & x2 & x3 & x4 & x5\\\\\n",
- "\t\\hline\n",
- "\t& Float64 & Float64 & Float64 & Float64 & Float64\\\\\n",
- "\t\\hline\n",
- "\t1 & 0.236033 & 0.210968 & 0.555751 & 0.209472 & 0.0769509 \\\\\n",
- "\t2 & 0.00790928 & 0.251662 & 0.773223 & 0.287702 & 0.278582 \\\\\n",
- "\\end{tabular}\n"
- ],
- "text/plain": [
- "2×5 DataFrame\n",
- "│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │\n",
- "│ │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │ \u001b[90mFloat64\u001b[39m │\n",
- "├─────┼────────────┼──────────┼──────────┼──────────┼───────────┤\n",
- "│ 1 │ 0.236033 │ 0.210968 │ 0.555751 │ 0.209472 │ 0.0769509 │\n",
- "│ 2 │ 0.00790928 │ 0.251662 │ 0.773223 │ 0.287702 │ 0.278582 │"
- ]
- },
- "execution_count": 22,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "x[x[:x1] .< 0.25, :] # probably this is what we wanted"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "### Single column selection for `DataFrame` creates aliases unless explicitly copied"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 23,
- "metadata": {},
"outputs": [
{
"data": {
@@ -833,10 +698,10 @@
],
"source": [
"x = DataFrame(a=1:3)\n",
- "x[:b] = x[1] # alias\n",
- "x[:c] = x[:, 1] # copy\n",
- "x[:d] = x[1][:] # copy\n",
- "x[:e] = copy(x[1]) # explicit copy\n",
+ "x.b = x[!, 1] # alias\n",
+ "x.c = x[:, 1] # copy\n",
+ "x.d = x[!, 1][:] # copy\n",
+ "x.e = copy(x[!, 1]) # explicit copy\n",
"display(x)\n",
"x[1,1] = 100\n",
"display(x)"
@@ -844,10 +709,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/13_extras.ipynb b/13_extras.ipynb
index ea578c5..a525167 100644
--- a/13_extras.ipynb
+++ b/13_extras.ipynb
@@ -5,7 +5,7 @@
"metadata": {},
"source": [
"# Introduction to DataFrames\n",
- "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 27, 2019**"
+ "**[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019**"
]
},
{
@@ -33,12 +33,12 @@
"data": {
"text/plain": [
"4×3 Named Array{Int64,2}\n",
- "a ╲ b │ x y z\n",
- "──────┼───────────\n",
- "'a' │ 71 87 98\n",
- "'b' │ 96 80 83\n",
- "'c' │ 83 75 79\n",
- "'d' │ 75 85 88"
+ "a ╲ b │ x y z\n",
+ "──────┼──────────────\n",
+ "'a' │ 91 78 94\n",
+ "'b' │ 73 92 87\n",
+ "'c' │ 78 102 85\n",
+ "'d' │ 71 76 73"
]
},
"execution_count": 2,
@@ -60,7 +60,7 @@
{
"data": {
"text/plain": [
- "(71, 83)"
+ "(91, 87)"
]
},
"execution_count": 3,
@@ -83,10 +83,10 @@
"4×3 Named Array{Float64,2}\n",
"a ╲ b │ x y z\n",
"──────┼─────────────────────────────\n",
- "'a' │ 0.277344 0.339844 0.382813\n",
- "'b' │ 0.370656 0.30888 0.320463\n",
- "'c' │ 0.350211 0.316456 0.333333\n",
- "'d' │ 0.302419 0.342742 0.354839"
+ "'a' │ 0.346008 0.296578 0.357414\n",
+ "'b' │ 0.289683 0.365079 0.345238\n",
+ "'c' │ 0.29434 0.384906 0.320755\n",
+ "'d' │ 0.322727 0.345455 0.331818"
]
},
"execution_count": 4,
@@ -109,10 +109,10 @@
"4×3 Named Array{Float64,2}\n",
"a ╲ b │ x y z\n",
"──────┼─────────────────────────────\n",
- "'a' │ 0.218462 0.266055 0.281609\n",
- "'b' │ 0.295385 0.244648 0.238506\n",
- "'c' │ 0.255385 0.229358 0.227011\n",
- "'d' │ 0.230769 0.259939 0.252874"
+ "'a' │ 0.290735 0.224138 0.277286\n",
+ "'b' │ 0.233227 0.264368 0.256637\n",
+ "'c' │ 0.249201 0.293103 0.250737\n",
+ "'d' │ 0.226837 0.218391 0.215339"
]
},
"execution_count": 5,
@@ -135,9 +135,9 @@
"4-element Named Array{Int64,1}\n",
"Dim1 │ \n",
"──────┼──\n",
- "3 │ 4\n",
+ "3 │ 1\n",
"1 │ 2\n",
- "2 │ 4\n",
+ "2 │ 7\n",
"4 │ 0"
]
},
@@ -214,8 +214,8 @@
"2×2 Named Array{Int64,2}\n",
"a ╲ b │ 5 6\n",
"──────┼─────────\n",
- "3 │ 258 258\n",
- "4 │ 254 230"
+ "3 │ 233 238\n",
+ "4 │ 276 253"
]
},
"execution_count": 9,
@@ -242,7 +242,7 @@
"",
"Stacktrace:",
" [1] getindex at .\\array.jl:730 [inlined]",
- " [2] getindex(::NamedArrays.NamedArray{Int64,2,Array{Int64,2},Tuple{OrderedCollections.OrderedDict{Int64,Int64},OrderedCollections.OrderedDict{Int64,Int64}}}, ::Int64, ::Int64) at C:\\Users\\bogum\\.julia\\packages\\NamedArrays\\uMdmN\\src\\index.jl:17",
+ " [2] getindex(::NamedArrays.NamedArray{Int64,2,Array{Int64,2},Tuple{OrderedCollections.OrderedDict{Int64,Int64},OrderedCollections.OrderedDict{Int64,Int64}}}, ::Int64, ::Int64) at C:\\Users\\bogum\\.julia\\packages\\NamedArrays\\d4lJL\\src\\index.jl:17",
" [3] top-level scope at In[10]:1"
]
}
@@ -259,7 +259,7 @@
{
"data": {
"text/plain": [
- "258"
+ "233"
]
},
"execution_count": 11,
@@ -473,7 +473,7 @@
],
"source": [
"df2 = DataFrame(x=1:3, y=4:6, z=7:9)\n",
- "@with(df2, cols(2:3)) # cols(expression) is translated to df2[expression]"
+ "@with(df2, cols(2:3)) # cols(expression) selects given columns"
]
},
{
@@ -572,37 +572,37 @@
{
"data": {
"text/html": [
- " | x | y | z | a |
---|
| Int64 | Int64 | Bool | Int64 |
---|
8 rows × 4 columns
1 | 2 | 1 | true | 1 |
---|
2 | 4 | 2 | false | 1 |
---|
3 | 6 | 3 | true | 1 |
---|
4 | 8 | 4 | false | 1 |
---|
5 | 10 | 5 | true | 1 |
---|
6 | 12 | 6 | false | 1 |
---|
7 | 14 | 7 | true | 1 |
---|
8 | 16 | 8 | false | 1 |
---|
"
+ " | x | y | z |
---|
| Int64 | Int64 | Bool |
---|
8 rows × 3 columns
1 | 2 | 1 | true |
---|
2 | 4 | 2 | false |
---|
3 | 6 | 3 | true |
---|
4 | 8 | 4 | false |
---|
5 | 10 | 5 | true |
---|
6 | 12 | 6 | false |
---|
7 | 14 | 7 | true |
---|
8 | 16 | 8 | false |
---|
"
],
"text/latex": [
- "\\begin{tabular}{r|cccc}\n",
- "\t& x & y & z & a\\\\\n",
+ "\\begin{tabular}{r|ccc}\n",
+ "\t& x & y & z\\\\\n",
"\t\\hline\n",
- "\t& Int64 & Int64 & Bool & Int64\\\\\n",
+ "\t& Int64 & Int64 & Bool\\\\\n",
"\t\\hline\n",
- "\t1 & 2 & 1 & true & 1 \\\\\n",
- "\t2 & 4 & 2 & false & 1 \\\\\n",
- "\t3 & 6 & 3 & true & 1 \\\\\n",
- "\t4 & 8 & 4 & false & 1 \\\\\n",
- "\t5 & 10 & 5 & true & 1 \\\\\n",
- "\t6 & 12 & 6 & false & 1 \\\\\n",
- "\t7 & 14 & 7 & true & 1 \\\\\n",
- "\t8 & 16 & 8 & false & 1 \\\\\n",
+ "\t1 & 2 & 1 & true \\\\\n",
+ "\t2 & 4 & 2 & false \\\\\n",
+ "\t3 & 6 & 3 & true \\\\\n",
+ "\t4 & 8 & 4 & false \\\\\n",
+ "\t5 & 10 & 5 & true \\\\\n",
+ "\t6 & 12 & 6 & false \\\\\n",
+ "\t7 & 14 & 7 & true \\\\\n",
+ "\t8 & 16 & 8 & false \\\\\n",
"\\end{tabular}\n"
],
"text/plain": [
- "8×4 DataFrame\n",
- "│ Row │ x │ y │ z │ a │\n",
- "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mBool\u001b[39m │ \u001b[90mInt64\u001b[39m │\n",
- "├─────┼───────┼───────┼───────┼───────┤\n",
- "│ 1 │ 2 │ 1 │ true │ 1 │\n",
- "│ 2 │ 4 │ 2 │ false │ 1 │\n",
- "│ 3 │ 6 │ 3 │ true │ 1 │\n",
- "│ 4 │ 8 │ 4 │ false │ 1 │\n",
- "│ 5 │ 10 │ 5 │ true │ 1 │\n",
- "│ 6 │ 12 │ 6 │ false │ 1 │\n",
- "│ 7 │ 14 │ 7 │ true │ 1 │\n",
- "│ 8 │ 16 │ 8 │ false │ 1 │"
+ "8×3 DataFrame\n",
+ "│ Row │ x │ y │ z │\n",
+ "│ │ \u001b[90mInt64\u001b[39m │ \u001b[90mInt64\u001b[39m │ \u001b[90mBool\u001b[39m │\n",
+ "├─────┼───────┼───────┼───────┤\n",
+ "│ 1 │ 2 │ 1 │ true │\n",
+ "│ 2 │ 4 │ 2 │ false │\n",
+ "│ 3 │ 6 │ 3 │ true │\n",
+ "│ 4 │ 8 │ 4 │ false │\n",
+ "│ 5 │ 10 │ 5 │ true │\n",
+ "│ 6 │ 12 │ 6 │ false │\n",
+ "│ 7 │ 14 │ 7 │ true │\n",
+ "│ 8 │ 16 │ 8 │ false │"
]
},
"execution_count": 20,
@@ -611,41 +611,13 @@
}
],
"source": [
- "@transform(df, a=1, x = 2*:x, y=:x) # create a new DataFrame adding columns based on the old one"
+ "@transform(df, x = 2*:x, y=:x) # create a new DataFrame adding columns based on the old one"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
- "outputs": [
- {
- "ename": "ArgumentError",
- "evalue": "ArgumentError: column name :a not found in the data frame; existing most similar names are: :x, :y and :z",
- "output_type": "error",
- "traceback": [
- "ArgumentError: column name :a not found in the data frame; existing most similar names are: :x, :y and :z",
- "",
- "Stacktrace:",
- " [1] lookupname at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\index.jl:170 [inlined]",
- " [2] getindex at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\other\\index.jl:176 [inlined]",
- " [3] getindex(::DataFrame, ::Symbol) at C:\\Users\\bogum\\.julia\\packages\\DataFrames\\Wvy9E\\src\\dataframe\\dataframe.jl:295",
- " [4] (::getfield(Main, Symbol(\"##16#18\")))(::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFramesMeta\\Ykidf\\src\\DataFramesMeta.jl:73",
- " [5] #transform#9(::Base.Iterators.Pairs{Symbol,Function,Tuple{Symbol,Symbol},NamedTuple{(:a, :b),Tuple{getfield(Main, Symbol(\"##15#17\")),getfield(Main, Symbol(\"##16#18\"))}}}, ::Function, ::DataFrame) at C:\\Users\\bogum\\.julia\\packages\\DataFramesMeta\\Ykidf\\src\\DataFramesMeta.jl:384",
- " [6] (::getfield(DataFramesMeta, Symbol(\"#kw##transform\")))(::NamedTuple{(:a, :b),Tuple{getfield(Main, Symbol(\"##15#17\")),getfield(Main, Symbol(\"##16#18\"))}}, ::typeof(DataFramesMeta.transform), ::DataFrame) at .\\none:0",
- " [7] top-level scope at C:\\Users\\bogum\\.julia\\packages\\DataFramesMeta\\Ykidf\\src\\DataFramesMeta.jl:478",
- " [8] top-level scope at In[21]:1"
- ]
- }
- ],
- "source": [
- "@transform(df, a=1, b=:a) # old DataFrame is used and :a is not present there"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 22,
- "metadata": {},
"outputs": [
{
"data": {
@@ -683,7 +655,7 @@
"│ 8 │ 1 │ 'a' │ true │"
]
},
- "execution_count": 22,
+ "execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
@@ -694,7 +666,7 @@
},
{
"cell_type": "code",
- "execution_count": 23,
+ "execution_count": 22,
"metadata": {},
"outputs": [
{
@@ -725,7 +697,7 @@
"│ 4 │ true │ 3 │ 9 │"
]
},
- "execution_count": 23,
+ "execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
@@ -738,31 +710,6 @@
" select(:z, :x, :x²)"
]
},
- {
- "cell_type": "code",
- "execution_count": 24,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "4-element Array{Int64,1}:\n",
- " 1\n",
- " 2\n",
- " 3\n",
- " 4"
- ]
- },
- "execution_count": 24,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "f(df, col) = df[col] # you can define your own functions and put them in the chain\n",
- "@linq df |> where(:x .<= 4) |> f(:x)"
- ]
- },
{
"cell_type": "markdown",
"metadata": {},
@@ -772,7 +719,7 @@
},
{
"cell_type": "code",
- "execution_count": 25,
+ "execution_count": 23,
"metadata": {},
"outputs": [
{
@@ -828,7 +775,7 @@
"│ 3 │ 12 │ 'd' │"
]
},
- "execution_count": 25,
+ "execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
@@ -840,7 +787,7 @@
},
{
"cell_type": "code",
- "execution_count": 26,
+ "execution_count": 24,
"metadata": {},
"outputs": [
{
@@ -871,7 +818,7 @@
"│ 4 │ 'd' │ 4 │ 12 │ 8.0 │"
]
},
- "execution_count": 26,
+ "execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
@@ -883,7 +830,7 @@
},
{
"cell_type": "code",
- "execution_count": 27,
+ "execution_count": 25,
"metadata": {},
"outputs": [
{
@@ -914,7 +861,7 @@
"│ 4 │ 'd' │ 4 │ 12 │ 8.0 │"
]
},
- "execution_count": 27,
+ "execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
@@ -925,7 +872,7 @@
},
{
"cell_type": "code",
- "execution_count": 28,
+ "execution_count": 26,
"metadata": {},
"outputs": [
{
@@ -981,7 +928,7 @@
"│ 3 │ 12 │ 'd' │"
]
},
- "execution_count": 28,
+ "execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
@@ -992,7 +939,7 @@
},
{
"cell_type": "code",
- "execution_count": 29,
+ "execution_count": 27,
"metadata": {},
"outputs": [
{
@@ -1048,19 +995,18 @@
"│ 3 │ 9 │ 'a' │"
]
},
- "execution_count": 29,
+ "execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "@orderby(g, -sum(:a)) # order groups on aggregate conditions\n",
- "# this fails but should be fixed in the future"
+ "@orderby(g, -sum(:a)) # order groups on aggregate conditions"
]
},
{
"cell_type": "code",
- "execution_count": 30,
+ "execution_count": 28,
"metadata": {},
"outputs": [
{
@@ -1107,7 +1053,7 @@
"│ 12 │ 12 │ 'd' │ 8.0 │ 4.0 │"
]
},
- "execution_count": 30,
+ "execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
@@ -1118,7 +1064,7 @@
},
{
"cell_type": "code",
- "execution_count": 31,
+ "execution_count": 29,
"metadata": {},
"outputs": [
{
@@ -1165,7 +1111,7 @@
"│ 12 │ 12 │ 'd' │"
]
},
- "execution_count": 31,
+ "execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
@@ -1176,7 +1122,7 @@
},
{
"cell_type": "code",
- "execution_count": 32,
+ "execution_count": 30,
"metadata": {},
"outputs": [
{
@@ -1223,7 +1169,7 @@
"│ 12 │ 12 │ 'd' │"
]
},
- "execution_count": 32,
+ "execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
@@ -1234,7 +1180,7 @@
},
{
"cell_type": "code",
- "execution_count": 33,
+ "execution_count": 31,
"metadata": {},
"outputs": [
{
@@ -1269,7 +1215,7 @@
"│ 6 │ 12 │ 'd' │"
]
},
- "execution_count": 33,
+ "execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
@@ -1287,7 +1233,7 @@
},
{
"cell_type": "code",
- "execution_count": 34,
+ "execution_count": 32,
"metadata": {},
"outputs": [
{
@@ -1334,7 +1280,7 @@
"│ 12 │ 12 │ 4 │"
]
},
- "execution_count": 34,
+ "execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
@@ -1345,7 +1291,7 @@
},
{
"cell_type": "code",
- "execution_count": 35,
+ "execution_count": 33,
"metadata": {},
"outputs": [
{
@@ -1392,7 +1338,7 @@
"│ 12 │ 12 │ 4 │ yes │"
]
},
- "execution_count": 35,
+ "execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
@@ -1404,7 +1350,7 @@
},
{
"cell_type": "code",
- "execution_count": 36,
+ "execution_count": 34,
"metadata": {},
"outputs": [
{
@@ -1451,7 +1397,7 @@
"│ 12 │ 12 │ 4 │ yes │"
]
},
- "execution_count": 36,
+ "execution_count": 34,
"metadata": {},
"output_type": "execute_result"
}
@@ -1464,7 +1410,7 @@
},
{
"cell_type": "code",
- "execution_count": 37,
+ "execution_count": 35,
"metadata": {},
"outputs": [
{
@@ -1511,7 +1457,7 @@
"│ 12 │ 12 │ 4 │ yes │"
]
},
- "execution_count": 37,
+ "execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
@@ -1533,7 +1479,7 @@
},
{
"cell_type": "code",
- "execution_count": 38,
+ "execution_count": 36,
"metadata": {},
"outputs": [],
"source": [
@@ -1543,7 +1489,7 @@
},
{
"cell_type": "code",
- "execution_count": 39,
+ "execution_count": 37,
"metadata": {},
"outputs": [],
"source": [
@@ -1552,7 +1498,7 @@
},
{
"cell_type": "code",
- "execution_count": 40,
+ "execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
@@ -1563,14 +1509,14 @@
},
{
"cell_type": "code",
- "execution_count": 41,
+ "execution_count": 39,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOy9eZwlR30n+I3M917dR1cJBDK2ASEB4rJsYBeBbdB8jDEM9iB7kQewWdZmB2aNjfHCzphZZjwYhsPGxgs2Y4zXHhaDMEiclgSIUwLdF5JaUkvdkrql7q6q7q7rVdV7mRm//SMyI+PKfEdl1asjvh99Wq/yRUZEHi++8f0dEYyI4OHh4eHhsV8RDLoDHh4eHh4eg4QnQg8PDw+PfQ1PhB4eHh4e+xqeCD08PDw89jU8EXp4eHh47Gt4IvTw8PDw2NfwROjh4eHhsa/hidDDw8PDY1/DE6GHh4eHx76GJ0IPDw8Pj32NbSXCVqt17733Ggc550mSbGc3PDYPIorjeNC98OgZURQNugsePSOOY78W5pZiW4nw8OHDr3nNa4yDGxsbq6ur29kNj80jjuPFxcVB98KjZ5w6dcoPqbsOS0tLfgazpfCmUQ8PDw+PfQ1PhB4eHh4e+xqeCD08PDw89jU8EXp4eHh47Gt4IvTw8PDw2NfwROjh4eHhsa/hidDDw8PDY1/DE6GHh4eHx76GJ0IPDw8Pj30NT4QeHh7V47/dwf/uPj7oXnh4dIXaoDvg4eGxB7GwQfWADboXHh5dwStCDw+PLYFf09Rjt8AToYeHR/UggudBj90CT4QeHh5bAq8IPXYLPBF6eHhUD4JXhB67Bp4IPTw8tgSeCD12CzwRenh4VA/Pgh67CJ4IPTw8tgTeR+ixW+CJ0MPDo3r4qFGPXYRdkFB/5MiRSy65ZNC92FY84QlPuPLKKwfdCw+PTcErQo/dgl1AhBsbG0tLS1/84hcH3ZFtwsmTJ9/85jcPuhceHpuCjxr12EXYBUQIYGho6MILLxx0L7YJR48eHXQXPDwqgCdCj90C7yP08PCoHkTeNOqxa+CJ0MPDw8NjX8MToYeHR/UgwMeNeuwWeCL08PCoHuSjRj12DzwRenh4bAk8D3rsFngi9PDwqB4+od5jF8EToYeHh4fHvoYnQg8Pj+rhfYQeuwieCKvEV7/61b/7u7+zj3/yk5/87Gc/u/398fAYIDwPeuwW7I6VZXYFkiT5yEc+8i//8i/2V69//etf+MIXXnLJJUNDQ9vfMQ+P7YdPqPfYRfCKsDJcdtllL3zhC0dGRuyvRkdHX/nKV1522WXb3ysPj0HB86DHboEnwn7w5je/+S/+4i/E59/5nd/5yEc+AuCf//mfL7roIgCXXXbZi1/84iRJFhcXzzvvvB//+McALrrooq985SsD7LNHVbjqGP2nm5NB92IXwBOhx27BbjWN/tmP+bUntumH9s7nBi8+m6lHfv3Xf/3973//H/7hH7ZarS9/+cvvfe97Adx0003ve9/7AFx66aVf+9rX/vzP//zuu+9+29ve9pznPAfA0572tBtuuGF7OuyxpTjdosMrg+7EjocPlvHYRditRPjSJ7KnTW5TW08eN49cfPHFb3jDG06ePHnjjTdeeOGF55xzDoC5ubknP/nJosDHPvaxn/u5nzv33HPf9ra3iSNPecpT5ubmtqnHHlsJP753A3+TPHYRdisRPv8s9vyzWOdyW4NGo/GqV73qK1/5yne/+903vOEN4uDk5KTkwmazmSTJY4891mq1hoeHAczPz09Obhd1e2wx/CjfDfxd8tgt8D7CPvEbv/Ebn/nMZ775zW++5jWvEUcuuOCCBx54AADn/I1vfOMHP/jBl7zkJe95z3vEt4cOHXrmM585sO56eGwvfNSoxy6CJ8I+8Uu/9Eu33HLLxRdfLHXer/zKr4i4mL/8y78866yzXvva137oQx+6/PLLr732WgB33XXXK1/5ykH22KM6+CG+I/wO9R67CLvVNDpwDA8PX3DBBdIuCuCtb33rr/7qr7797W9/xzveIY5MTEwIjUhEX/rSl3zU6J6BH+K7gb9LHrsFFSvCq6666oILLpienr7gggu+8Y1vVFv5zkEURbfeeuvRo0df/vKXy4PT09OvfvWrr7nmGrv8Nddc8+pXv3pqamob++jhMUh406jHLkKVipBz/vrXv/7zn//8y172sssvv/xNb3rTo48+WmH9Owdf/epX3/rWt37iE59oNBrq8d/7vd87cuSIXf6cc8558YtfvF2989ha+MSALuFvksduQZVEGMfxpz/96Ysvvnh1dXVoaGh6errCyncULrnkkksuucQ+PjIycsEFF9jHnQc9PPYwPAt67CJUSYSNRuOVr3zl6urq5OQkY0wEiRhYWFj45V/+ZfVIkiRE9LrXvU6GXxpYWlqifTYDJ6LTp08PuhdliKJoeXk5CPZjsNXqaq3Vrp8+vT7ojvSDxcXFer3O2JanHrVaw+uc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"
+ "image/png": "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"
},
- "execution_count": 41,
+ "execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
@@ -1581,14 +1527,14 @@
},
{
"cell_type": "code",
- "execution_count": 42,
+ "execution_count": 40,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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"
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nO3deXyU1b0/8O85z0wmK5ksEMhkgUgSRKSAihsi+1aTSHG72gqUtrY/87u2LtdeReptrQr+bK/1er1KG1uVq1gNuyiyBEGQKqUiaMISCNmAQCYJ2Wbmec75/RGlKAGSYWae7fP+477oZJnvHZ9zPjnnOec8TEpJAAAAdsX1LgAAAEBPCEIAALA1BCEAANgaghAAAGwNQQgAALaGIAQAAFtDEAIAgK0hCAEAwNYQhAAAYGsIQgAAsLVIB6GUcvfu3RF+04unqirOogsrKaWqqnpXYXG4jMMNl3EEaJomhAjt74x0EPr9/quuuirCb3rxvF6vpml6V2Flfr+/paVF7yosrqWlxe/3612FlWma5vV69a7C4lpbWzs7O0P7OzE1CgAAtoYgBAAAW0MQAgCArSEIAQDA1hCEAABgawhCAACwNQQhAADYGoIQAABszaF3AQCgJ59G62pFQycd66Dr09jY/kzvigAiDUEIYF8fH5fzPtT6xlBOAkt20dzN4rIk9vRoPtSNOAQbQRAC2NSjn2p/3iefu5bfMuirWyRPXkX//YUYt1pdOtExfgCyEOwCQQhgR7/ZJd6vkbtnOVJc/3wxitPPh/GRKez2jermmxz5ichCsAUslgGwnSUHxJ/3idVTv5GCp904gC0crcx4T2sI8cnGAAaFIASwl4118sEd2tppSv+Yc37P7Fx+aw770RY8cQVsIZgg9Hq9BQUFycnJhYWF3T5zZM+ePXFxcRddGwCEWJOf5mzWXhvnyLvQtOevr1C+8MoNdXh+IVhfMEG4cOHC7Ozs+vr6rKysRYsWfeurTU1Ns2fPbm9vD0V5ABBKD3zCirLZJM+Fb/5FcXrmav6v2zQ1xM9ABTAcFsQTq/Pz81esWDFkyJDy8vKioqKKiorTXxJCzJw58+67777lllu6/c0+ny8hIeHpp58++0tZWVkzZszobTGRceLECbfb7XBgbVG4+Hy+9vb2pKQkvQuxsrcq2v6jPHHHDDXe2dMfuWmjMitLzh2MMOwRVVWbmppSU1P1LsTKWlpaHA5HbGxsD78/Ojqa8wsM+YLp2Wtra7Ozs4moa1x45peeeuqpvLy8WbNmnefHpZTl5eXdvh4IBIKoJwICgUAgEAjijwboocDX9C7Espr87Jd7+iy+stVFSs8/5v+4XLtti+tmjz/egYv/wlRVxWUcbl0fb88/ZJeruyVh3xRMEEopGWNd/9C0f95OX79+/YYNG9atW3f+H+ecv/zyy0G8r478fn9iYiJGhOHj8/kcDkdiYqLehVjWo9u073p8U3LietIvnHZDIk2o1N6qj//FMCysuzBVVYUQuIzDzel09nxE2BPBXNzp6enV1dVEVFtb6/F4Tr++fv36TZs2OZ3OrphkjG3dujVUhQJA0D5vlG8fEv8+1BfEz95/Of/DXqFhQAjWFUwQFhQUlJSUSClLSkqKioqIqKysjIiefvpp+TUiklKOGTMmpNUCQK9JouJt2m+vVJKjgkmzK1JZeiytOoLbhGBZwQThggULdu/enZmZuXfv3vnz5xPR+PHjQ10YAITGn/cJn6C5ecHPbd53GX9uD4IQLCuYm15ut3vNmjVnvnL2KhKsKwEwgpYAPfqptmqKg1/EcWnfG8gf3CH+cVKOSMGha2BBuAEOYGW//rs2I5NfkXpRAebgdO9Q/oe9GBSCNSEIASyrolm+ul88eaVy8b/qR0P4ssOiBfsCwIoQhACW9YuPtX8fofQ795miPZfionEDeOkhDArBghCEANa0+og8dIqKh4asjf8gl726H0EIFoQgBLCgDpXu267913WKM3RN/KYsvscrq9uwDg6sBkEIYEFPfqZd3Y9NTA/lIs8oTrMG8SUHEIRgNQhCAKs50CJf+lI8Mzr0rfsHgzlmR8F6EIQAliKJfvaR9ugIxRMX+j1/16axgKCdJzAoBEtBEAJYyh/LRYuf7g3dGpkzMaI7L2FvHMSgECwFQQhgHVWt8tFPtZKxiiNsLXvWIP7OYRwcBZaCIASwCEl0z1btoeHKZUlhPAhteDJzcdqF2VGwEAQhgEW88IVo9tP9l4e9Ud88kJUexuwoWAeCEMAKPmuUv9ml/flGRQn/sdizBvK/HsKIEKwDQQhgek1+mrVe++/rlPzESDwd4sq+rFOjL5qQhWARCEIAc5NEczZrBVls1qAINWdGNHMgK8WgEKwCQQhgbr/aqTV0yoWjQ/CIiZ6bNZC/g9uEYBUIQgATW3JAvH5ALpvkiIpsU74+jdW3y8OnMCgEK0AQApjVR8fk/Tu0VVNC86ClXuGMpmfy1dUIQrACBCGAKR1okbduUF+90RHWXYPncVMmW30Es6NgBQhCAPM56aPvvq89NlKZmqFPChLR1Ay+/Zg8hWfWg/khCAFMpkOlm95X78hhP7tUz/Yb76Sr+7ENdRgUgukhCAHMRBLN/VDL7cMevyKiy0S7dVMWX30EtwnB9BCEAGby213iQIt8aUwEDpC5sIIstuqIEIhCMDkEIYBpLK8S/1MuVkxWYhx6l0JERIMSWKqL4fGEYHYIQgBzOHRK/mSLtmJyWJ64G7SbsrB2FEwPQQhgApqk2Zu1X35HuSLVQClIRDMy+doajAjB3BCEACawaLcgop8PM1yDvT6NHWiRxzv0rgPgIhiuXQHAt/zjpPzPPdqS8Qo31miQiMjBadwA/kEtZkfBxBCEAIYmie7dpj11lZJppFuDZ5qWwd7D7CiYGYIQwNDeqhTtKs3JNW5TnZ7J3q/BJgowMeO2LgDwC3r0U/H/rjbipOhpmXEsNZrtOokkBLNCEAIY1+8+F8OT2cR0A8cgERFNz8TsKJgYghDAoBp99Ozn2tNXmaCRTs3g79VgvQyYlQnaGIA9vfilKMzieYlGHw4S0dj+7LOTstGndx0AQUEQAhiRT6MXvtB+cbk5Wmi0QmP6s414EgWYkzmaGYDdvH5AjEhhw3R66G4QJnv4+lrcJgRTQhACGI4k+v0e8cDl+j9oqeemeNj7CEIwJwQhgOG8Wy0VRhMMv1j0TJclMVXQgRZkIZgPghDAcJ7fqz003MhbB7s3ycPWYRMFmBCCEMBYatvkJw1y1kDztc1J6ewDzI6CCZmvsQFY26sH5K2DuEEevdsrUzP4pnoRwNJRMBsEIYCxvLpfzM4zZcNMjaZBCexvDRgUgsmYsr0BWNXHx6Um6Zp+prs/+JUpHoZHMoHpIAgBDOTV/WJOrvmWyZw2JYNjvQyYDoIQwCg6NXqrUvwg17w5SNensT1e2ezXuw6A3kAQAhjFu9ViRAoz7AN4eyJaoWv7sbJ6zI6CmSAIAYzinUPy1hzTN8mJHr6hDrOjYCamb3UA1hAQ9F6NKMwyfZPEbkIwHdO3OgBrWF8rhyaxAbF613HRRqSwk52yug1ZCKaBIAQwhGVVYma2FdojZzQ+nW/AoBDMwwoND8DshKTVR8TNA028TOZMk9IZbhOCiSAIAfT30TGZFsNyEiwShFMy2Ae1AkkIZoEgBNDfssNipglP2T6X7HgW72R7GhGFYA7WaXsA5rWiSt6cbZHhYJfJHrYes6NgEghCAJ2VN8mAoOHJlgrCCelsAw4dBZNAEALo7L0aOSPTUilIRBPS+dZjEo9kAlNAEALo7L0aMTXDakGY4qIcPJIJTAJBCKCnDpW2H5MT0i3YEid5sIkCzMGCzQ/ARDbVy1GpLDFK7zrCYGI6x21CMAUEIYCe3qsR0zKs2Qxv6M92nZStAb3rALgQa7ZAALN4r0ZOs9xKmS6xDhqVyrYew+woGB2CEEA3h07J1oC02MaJM2F2FEwBQQigm3er5bQMbtkYJJqIQ0fBDBCEALpZXysneyycgzS6L6s8JU906l0HwHkhCAH0oUn68KgYb8WNE6c5ON3Qn5XVY3YUDM3KjRDAyHaekJ441j9G7zrCbGI6x+woGByCEEAfG+rkxHQrz4t2wW1CMD4EIYA+NtSKiZaeF+0yLJm1+GVVK7IQjMv67RDAgDo1+luDHDvA+iNCRjRuAN+EQSEYGIIQQAfbjsnLk1kfp951RARmR8HgEIQAOthQJ+xwg7DLRA/bUCeQhGBYCEIAHWyok3a4QdglJ4FFK6y8CVEIBmWXpghgHM1++sIrr+lnlxEhEU1MZ+trEYRgUMEEodfrLSgoSE5OLiws9Hq9Z35p7dq1Q4cOdbvdQ4cOXbduXYiKBLCULUfl1f2YS9G7jgiamM424jYhGFUwQbhw4cLs7Oz6+vqsrKxFixadfl3TtDvvvPP5559vbGz89a9/PXfu3NDVCWAdm+rF+AH2moyZkM43HxUaohAMKZjWuGzZsuLiYpfLVVxcXFpaevp1VVWXLFkyYcKEtrY2l8vldrtDVyeAdZTVy3E22Dhxpn4x5Illfz+BJAQjcgTxM7W1tdnZ2UTUNS48/brL5ZoxY0Zra2ufPn0YY1u3bu32x4UQDz744NmvDx48+K677gqinghobW11OBwORzAfF/SEz+drb293Oq2/n6A5wPY1ReVHd5w6Fem3bm1tFUL4/f5IvzEREd3Q1/HuocCQaFWXd48MVVVbW1ujo6P1LsTKWltbnU6npmk9/P7Y2FhFucB9iGB6diklY6zrH2dXEx8f39ra+txzz913332ffPJJt78hPj7+7BdjYmK6fq0Bsa/pXYhl2ecT/qiBX9NXuhQd/j/V90Me31/+zz7lgaFW/k9sn8tYR10fb88/5J58ZzBBmJ6eXl1dnZubW1tb6/F4Tr9eWVn50ksvLVy4MC4ubt68eU8++WS3P845f/zxx4N4Xx11dHTEx8djRBg+TqeTMdbtX0gW87FXm5jB4uNdkX9rv98fFxfncunw1kQ0bRDN2x5wxMRHW3eVkKqqgUDADpexjjRNczqdsbGxIfydwdwjLCgoKCkpkVKWlJQUFRURUVlZGRGlp6e//PLLW7ZskVIuXbp05MiRISwUwBrK6uV4m90g7JLgpMuS2MfHcZsQDCeYIFywYMHu3bszMzP37t07f/58Iho/fjwRRUdHL1u27Oc//3lKSsqbb765ePHiEBcLYHKNPqpskaNS7RiE9NVZa3g2IRhOMHN9brd7zZo1Z74i5Vd/5Y0bN27nzp0hqAvAijbXi+v7M6e9tk7804R0Pv9T7TdX6F0HwDfZtUUC6KGsXo6z2Q7CM12XxvZ4ZUtA7zoAvsm+bRIg8my4g/BM0Qpd3Y9trsfsKBgLghAgQhp9VNUqR6XYNwiJaEI6x1lrYDQIQoAIKasXY9KYw95tDs8mBAOyd6MEiKCyenmjjW8QdrkildW2yaMdetcBcAa7N0uAiCmrl+Nt8zDec1EYje3Py7CJAowEQQgQCSd9VN0qR9r7BmGXiR7MjoKxIAgBIqGsTozpz/Q4YdRwJqazD/CQXjASBCFAJOAG4WmXupkqqfIUshCMAi0TIBJse8Rot8YPYBswKATDQBAChF1DJ9W0yRG4Qfg1bKIAQ0EQAoTd5nrcIPyGiR62sU4gCcEgEIQAYbexTk5IR1v7p8w4luRiuxsRhWAIaJwAYbexTk6w/Q7Cb5nkYetxmxCMAUEIEF517fJEp7w8CUH4DXg2IRgHghAgvNbXygnpnCMHv2lCOv/oqPRpetcBgCAECLdNOFmtO+4oyktkOxowOwr6QxAChNemOjkRQdidSR62oRazo6A/BCFAGB1okQFBeYkIwm5MTOfYTQhGgCAECKONdXKSBynYvTH92e5G2RLQuw6wPQQhQBhtrMPJaucUrdDovuzDegwKQWcIQoBwkURl9QI7CM9jkoevxyYK0BuCECBc/nFSJrlYVjyC8JwmpmNbPegPQQgQLutq5BTcIDyvK1LZsQ5Z04YsBD0hCAHCZV2tmJKBJnY+nNG4AXwj1o6CrtBKAcKiXaVPGuSN/TEivAAcOgq6QxAChEVZvbwylcU79a7D8Calsw9q8Ugm0BOCECAsMC/aQ5f0YbEO9oUXUQi6QUMFCAuslOk5zI6CvhCEAKFX0yZPdMoRKQjCHpnkYdhNCDpCEAKE3vs1crIHj17qqQnpfMtRGUAUgk4QhACh9261nJqBGOypFBflJbKPj2N2FPSBIAQIMZ9GG+vEjEw0rl6Y7GEf4JFMoBO0VYAQ21QvhyWz1Gi96zCVyR6+DutlQCcIQoAQW3VEFGShZfXOdWmsvEk2+vSuA2wJzRUgxN6tlgVZuEHYO1GcbujPNmLtKOgBQQgQSp81Sk50qRtB2GuTPfwDzI6CHhCEAKG0qkoWZiMFgzHFw96vQRCCDhCEAKGEG4RBG+JmkmhfM7IQIg0tFiBkjnbQ/hZ5A544EazJHoa1oxB5CEKAkCk9JL6byZ1oVcGa4mHrMDsKEYcmCxAyb1aKOy5BmwreZA//8KjwaXrXATaDRgsQGvXt9IVXTsYTJy5CkouGuNl2nLUGkYUgBAiNtypFYTaPQpO6ONMy2Ps12E0IEYVWCxAaSyvF7TloUBdragZ/D7cJIbLQbgFCoLpNHmiRE9IxL3qxRvdl1a2yvl3vOsBOEIQAIfBWpZw5EOtFQ0BhNCGd40kUEElouAAh8MZBcRvmRUNkWibD7ChEEpouwMXa3SgbOmncAMyLhsZUD/ugVghEIUQKghDgYr1cLn6UzxXkYIh44lj/GLbzBJIQIgRBCHBROlR686CYm4cYDKVpGWwtZkchUhCEABflr4fENf1YRhyCMJSmZ/K11VgvAxGCIAS4KH+qED8agnYUYjf0ZxXN8niH3nWAPaABAwSvolnub5HfzUQ7CjEnp/ED+DpsooCIQAMGCN4f9op5+dg+GBYzMtm71bhNCJGAFgwQpOMd9MZBce9QRe9CrGlGJl9XIzREIYQfghAgSM9/od2Rw/vH6F2HRQ2IpYw4tgNPooDwQxACBKNNpZfLxf2XowWF0YxMthZPooDwQzMGCMbicjFuAB/cB7smwmhGJsdtQogABCFAr3Vq9Ps94t+Go/mE1zX9WNUpWduGLITwQksG6LU/7BVXpLIrUjEcDC8Hp2mZfDUGhRBmCEKA3vH66NnPtd9eibYTCQVZbFUVbhNCeKExA/TO43/Xbs/hl7oxHIyEaRl8y1HZpupdB1gaghCgFypPyf89KB4dgb2DEZIYRVf2ZRtwxAyEE4IQoBeKt2kPDVfSsHcwggqy+KojuE0IYYQgBOipV/aJujb6xTC0mogqzGZrqvGYXggjNGmAHqlrl7/8RCsZq+Bk0QjLSWDuKPZpA6IQwgVtGqBH7tmq/exSPgpbJvRQkMVWHcFtQggXBCHAhf3Pl6KmjR7BGhmd3DyQL6/CiBDCBUEIcAGfNcoFO7U3xitRaC46ubovO9Ep9zcjCyEs0LIBzqfJT9/7QPv9NcoQbBzUD2dUmMVXYu0ohAeCEOCcJNGczdpNWeyuwWgpOps5kC87jNuEEBZo3gDn9PhOrdEnn7katwb1Nz6dfdEkj3XoXQdYEYIQoHvLDotXD8i3Jzpwa9AIojhNz+ArcO4ohEEwTdzr9RYUFCQnJxcWFnq93jO/VFpaOmzYMLfbPXbs2H379oWoSIBI290of/qRVjpJ6YdDZAzj5oFsOYIQwiCYIFy4cGF2dnZ9fX1WVtaiRYtOv37o0KE5c+aUlJTU19cXFBTMnTs3dHUCRE6jj2Z+oD13jTIyBQtkDGR6Bt92TLYE9K4DLCeYIFy2bFlxcbHL5SouLi4tLT39emVl5Z133jl69OiYmJg5c+ZUVFSErk6ACNEk/ctGddYgdsclmBI1lngn3TiA46lMEHJMyl6vSI6Pj29oaIiJieno6EhLS2tpafnWN2iaVlxczDl/4YUXvvUln88XHx9/2223nf1rL7vssnvvvbe3xUTGiRMn3G63w+HQuxDL8vl87e3tSUlJehdCv9rt/KyJv3ODT7HcaNDr9cbGxrpcLr0LCd7SKmVFjeN/r/fpXUj3VFVtampKTU3VuxAra2lpcTqdMTE9vWkRHx+vKBdY7xZMzy6lZIx1/UPTtG99dd26dQ8//PDUqVOfeOKJbn+cMTZ27NizX/d4PE6nM4h6IsDpdDqdTgRh+Aghuj5kfct4v44vq1E+mq5GRxn0UrwYzq/pXUjwCrPZQ7u4j0XFO4y4p5AxZvZP2Pi6uuKef8hdaXV+wfTs6enp1dXVubm5tbW1Ho/n9OtSyocffnj79u1Lly7Ny8s7T1n33HNPEO+ro5iYmNjYWARh+CiKIqWMjY3VsYbjHVT8N/X18UqG25odWWdnp9lHhLFENw7Q1jc47jTkxLWqqj6fT9/L2PICgYDT6QzthxzMxVRQUFBSUiKlLCkpKSoqIqKysjIi+vDDD1euXLlq1ar09PTW1tbW1tYQFgoQVpLohx+q8/LZ+AGWmxK1lltz2F8rjTgcBPMKJggXLFiwe/fuzMzMvXv3zp8/n4jGjx9PRGVlZRUVFUlJSQlfC3GxAGHz/F5x0kcLRmLvvNEVZvFN9eIU1o5C6ASzWOZi+Hy+Pn36+HwGvdd9Lg0NDUlJSZgaDR+fz9fW1pacnKzLu9e0yZHL1G0FjtxEKw8HGxsb4+LiTD012qVwnXbHJcyAs6Oqqnq93r59++pdiJU1NzcbYmoUwGJ+/rEoHqpYOwWtBLOjEFoIQrC792vkZyflw99BWzCNomy+qV40mmxeCYwLjR9srUOle7dpL1yvROPmoHn0cdIkDx5GASGDIARbe+FL8Z1kNsWDSVGT+Zcc9sZBBCGEBoIQ7Ks1QM/u1n41Cq3AfL6bxXedlLVtuFMIIYAuAOzrd3vEZA8fnozhoPlEK1SUzf96CEEIIYAgBJtq8tN/7dUeHYkmYFb/cgnH7CiEBHoBsKlFn2k3D+T52DJhWhPS2ZFWeaAFg0K4WAhCsKOWAL1cLuaPwPVvYgqj2y/hSw4gCOFioSMAO/pjuZiawbPiMRw0tx8M5n/ZL5CEcJEQhGA7mqQXvhD3DcPFb3pXpLJ4J310FFEIFwV9AdjOssMiPY5G98Vw0Aq+P5i/egBLZuCiIAjBdn6/R/wCw0Gr+P5g9s4h0aHqXQeYGboDsJe/Ncj6dirKxpVvEemx7Kq+bOURDAoheOgOwF5e+lL8n6FcwbSohdydy1/djyCE4CEIwUZOBWhZlbh7MC57S7k5m398XNa1Y8kMBAk9AtjI0koxIZ33i9G7DgipWAfNGsRf3Y8ghCAhCMFG/lQh5uXhmreguXn8lX3YUAhBQqcAdlHeJGvaaEoGbg9a0LX9mINhQyEECUEIdvFyuZiTx7BMxqrm5PFX9mHJDAQDQQi2EBC05KCYi3lR67o7ly+rEqcCetcBJoR+AWzh/RqZn8hyEjAetKy0GBrbn79ViUEh9BqCEGzhjYPijhxc7RY3L5+VYHYUeg9dA1hfu0rvVotbBuFqt7gZmby6lfZ6sWQGegddA1jfiipxXRrD9kHLUxjdncv+VIFBIfQOghCs742D8l8uwaVuC/Py+esHhE/Tuw4wFfQOYHFeH314VBTilG17GJTARqSw5VUYFEIvoHcAi/vrITEtg/dx6l0HRMqP8vnicgQh9AKCECzurUpxew52TdjIzQP55155sAVLZqCnEIRgZSd99EmDnJqB69xGojj9YDDHkhnoOXQQYGXLDotpmTzWoXcdEFk/HsJf2ScCiELoGQQhWNk7h8SsgZgXtZ38RJaXyFbjsfXQMwhCsKwmP207Jqdn4iK3ox8P4YsxOwo9gz4CLGtllZiQzhOwXtSWbhnEP2mQh09hyQxcGIIQLOudw3LWIMyL2lS0QncN5jh6FHoCQQjW1BqgsjpxUxaucPv6cT4v2SdVRCFcCLoJsKa1NeL6/swdpXcdoJ/Lklh2PK2tQRLCBSAIwZqWH5Y341g12/tRPv9jBW4TwgWgpwALCgh6r0YUYF7U9u7I4duOido2ZCGcD3oKsKBN9XKImw2I1bsO0FuMg24dxF/ZhyCE80EQggWtqBJFmBcFIiL66aV8cYXQEIVwbugswGok0coqWZSNjRNARDQ8mfWNpg11SEI4JwQhWM0nDbKPk/ITEYTwlR/l4wxuOB8EIVjNiipxM84XhTPcOZh/UCsaOvWuA4wKQQhWs6JKFmK9KJyhj5OKsvlr+zEohO6hvwBLOdgivT4a3Q8jQviGeXk4gxvOCUEIlrK8ShZmM8QgfMuY/owRbT+OJTPQDQQhWAo2TsC5zM3DkhnoHroMsI4TnfR5oxw3AANC6MbsXF56WJwK6F0HGA+CEKxj9RExycOjFb3rAEPqF0PjBvC3KjEohG9DEIJ1rMA+ejivH+bxV/CEQjgLghAsokOljXVieiYuaTinaRns0Cn6sglLZuAb0GuARWyok6NSWYpL7zrAwBycZucyDArhWxCEYBErj2C9KFzY3Dz+2n4RQBTCGdBxgBUISauqBG4QwgXlJrLcRLa2GkkI/4QgBCvY0SD7xbBBCQhCuLAf5vE/4QmFcAYEIVjB8sPiZgwHoWduzeFbjor6dr3rAMNAEIIVrKiSuEEIPRTnoJnZ/PUDmB2Fr6DvANMrb5KtKo1MxYgQeqrruDVMj0IXBCGY3vIqORMHbUNvjOnPGKMdOIMbiAhBCBaAg7YhCHfn4pQZ+Aq6DzC3ox20r1mOxUHb0Euzc9lfD4k2Ve86wAAQhGBuK6rEtAwehQsZeik9ll3Xj71zCINCQBCCyZUeEt8biOEgBGMuzuAGIkIQgqk1+WlHg5yGg7YhKAXZ/IsmeaAFS2bsDj0ImNjqI2LcAB7n0LsOMKcoTnddwv+MQaHtIQjBxJYdljMxLwoX4Yf5/M/7pYYxob0hCMGsOlTaUCe+i3lRuAjDkpgnltbVIAltDZ0ImNW6WnFFKkuN1rsOMLkf5vMSzI7aG4IQzKr0sJw5EBcwXKw7cviGOtHQqXcdoB/0I2BKAUFrjmDjBIRAYhQVZfNX92NQaF8IQjClD2rlpbsRi5AAABRGSURBVEksPRZBCCHw43y+uBxncNsXghBM6e1D4hbMi0KIXJfGHJy2HkUU2hS6EjCfgKCVVQIbJyCE5uXzP1ZgdtSmgg9Cr9dbUFCQnJxcWFjo9Xq7XtQ0bciQISGqDaB7G+tkXiLLikcQQsjcnctXVgmvT+86QA/BB+HChQuzs7Pr6+uzsrIWLVpERM8999x1111XUVERuvIAuvHOYTFrECYzIJRSXDQ9E4+tt6nge5Nly5YVFxe7XK7i4uLS0lIiGj58+GOPPRa62gC6oUlaUSVmYV4UQu2nl/IXv8SSGTsK/pTG2tra7OxsIuoaFxLR+PHje/KDQogJEyac/frIkSMfffTRoOsJK6/XK6V0OHCoZbj4fL729vaefOeHDQ5PdFSfwKnGxnAXZTVer9fn87lcLr0LMahhUUQibvW+9utTg3xKoaqqTU1NiqKEtjA4U0tLi9Pp7Ozs6cbPxMTEC/4XCb5nl1Iyxrr+oWlaz3+QMXb//fef/XpKSkpcXFzQ9YRVR0dHXFwcgjB8uj7bnlwAK3ezO3J69J3wLT6fLy4uDkF4Hj8dwl49EjMlO8gJUlVVA4EALs6wUlXV6XTGxsb28Ps5v/DEZ/A9e3p6enV1dW5ubm1trcfj6fkPMsZuuummoN9XF1FRUS6XC0EYVqqqXrCPDghaVRN4/EqHy4Wp0V5zfU3vQozrh5fSf3wWOKFGeeKCucAURenqK0JeGJzmcrmcTmdoP+Tg7xEWFBSUlJRIKUtKSoqKioiorKwsZHUBdOe9GjHUjfWiEC7xTrrjEv6nfbhRaC/BB+GCBQt2796dmZm5d+/e+fPnU4/vEQIE7a1KeVsO1otCGP3sUr64XASwetROgp/rc7vda9asOfMVKeXp/wsQch0qrakWz17t1LsQsLJhSSy3D/31kLjzEvzJZRf4Lw2msbpaXJXK+sXoXQdY3f2XK7/7HENCG0EQgmksrZS34490CL/vZrF2lTbXY3LLLtCtgDk0+2lDrfgeDtqG8GNE9w3jv9uDQaFdoFsBc3j7kJjk4e4ovesAe5idy/92XJQ3YVBoCwhCMIclB8Rdg7FrAiIkWqEfD+HP7cWg0BYQhGACtW3yc6+cnoHLFSLnvmHKW5WiqhWDQutDzwIm8NoBeesg7sIJjhBBKS6al8+f2Y1BofUhCMEElhwQ3x+MaxUi7d+GK28eFDVtGBRaHDoXMLpdJ2WrStem4QYhRFpqNM3J44swKLQ6BCEY3av7xd2DGWIQdPHQcGXJAVHXjkGhlSEIwdD8gv73oJidhwsV9JEWQz8Zwh/7FINCK0P/Aoa2+ogY6mY5CRgQgm4eGaG8VyN3nsCg0LIQhGBor+wTczEcBF0lOOlXo/iDO3rx+HEwF3QxYFzHOuijYxLHqoHu5uXzkz5aUYUJUmtCFwPG9Zf9YtZAHo/HLoHeFEbPXq08uEN0qHqXAmGAIATj+jPmRcEwJnvY6L5swU5MkFoQehkwqK1HpSS6DtsHwTCeu1ZZclB80oBVM1aDIASDeqlc/GQIrk8wkNRo+v01yuzNmg/DQmtBRwNG1Oij1UfE3bm4PsFYbs/heYns8b8jCS0FHQ0Y0V/2i5uyeIpL7zoAzlIyVnmzUq7EClILQRCCEf2xXNyDeVEwpGQXvTFe+clWDU9osgz0NWA4m+slYzSmP5bJgEFd0489cLly5ybNj2GhJSAIwXCwTAaM78HhvH8M+/EWDaNCC0B3A8ZS307v14jZWCYDxsaIXh+n7GuWv9mFUaHpobsBY/mfL7U7LuGJUXrXAXAhMQ5aPtnx533itQPIQnNz6F0AwD/5BS2uEBtm4LIEc0iLoTVTlYnvqn2cVJSNcYVZoccBA1laKYYns0vdWCYDpnGpm62d5pi6Vo3ibPIAvauBoOBPGDCQ/9oriocqelcB0DvfSWalkxxzPlS3HNO7FAgKghCM4tNG5aSPZmRiOAjmc10ae3OC444yuf0kptnMB0EIRvGHfVG/GMY5chDMafwAtnQcm/dJ7KZ6bKkwGQQhGML+FtpxkuOhS2BqY9LopSva79iobjmKLDQT9DtgCL/by+blqLGYVQKTu6Gv+vZExy0b1DKMC80DQQj6O9pBK6rZvBy/3oUAhMAN/dmScY7bN6rbjiELzQFBCPp7bo92+0CZ4kKvARYxycNeH+f43np15wlc1SaAIASdeX30xwpx31D0F2Apkz1s8Q1KwTp1jxfXttEhCEFnv9uj3ZzNB8brXQdAqBVk8f+8Rpn2nnagBVloaFicAHo60UkvfiF2zsR1CNZ0Ww5v9tO097SPChxpMXpXA+eAESHo6Znd2u2X8Ox4bB4Ey/rxED47l09eqzZhNZhRIQhBN8c66E8V4pHv4CIEi3tsJB+Txm7boAbwmApDQh8Eunlil/b9XO6Jw3AQrO/565Rohd27TdO7EOgGghD08UWTfOuQmD8CR2yDLSiM3pygfHZSPrMbo0LDQRCCPn6+XZs/QkmN1rsOgEiJdVDpJOX5vWJ5FbLQWBCEoIPlVaK2jX56KS4/sBdPHFsxRblnq7a7ERsqDAQ9EURap0YP7RD/ea3ixNUH9jMyhf3hWuXmD7QTnXqXAl9DVwSRtmCnNjKFTfZgjQzY1O05/M5L2C1YRGoYCEKIqG3H5OsHxH9fjzUyYGu/vkJJjGI//xiLSA0BQQiR067SnA+156/FGhmwO87o9XHK5nr5cjlGhfpDEELkPLBDu6YvmzUIVx0AJTipdJKyYKeGpzXpDl0SRMjicrGpTj5/HSZFAb6Sl8heGeu4baNW04Ys1BOCECJh61G5YKe2coqSGKV3KQBGMj2T3XcZL1yntat6l2JjCEIIuwMt8tYN6qvjHHmJWCkK8G0PDeeXJbEfbdEwKtQLghDCa69Xjl+j/fYqBfslAM5l8Q1K5Sn5xC4snNEHghDCaOcJOeld9Ykr+Q/zcKUBnFO0QqunOP6yXyw5gCzUAbonCJeSfWLG++riGxyzc3GZAVxAajQtn6zcv0PbfhxTpJGGHgpC70Qn3bJBe36v2PRdx01ZmBEF6JFhSewvNzpmrVfLm5CFEYUghFBq8tPjf9cufTswKJ4+LnQMdSMFAXphWgZ76ipl+vtaLTZURJBD7wLAIrYfl68fEG9VioIs/rcix6AERCBAMGbn8oZOmvqe9uFNjmSX3tXYA4IQgneikzbViw9q5boaGeeg7+fyv890ZOKJ8wAX58HL+YlOOXmt+sF0ZGEkIAihd7w+2lQvNtbJzfWyuk2OSWOTPfwXw/ilmAUFCJ2nr1KE1JCFkYEghB450irfOSzfPiT2NMrr+7NJ6fyHefw7KUxB/AGEx6LRysN/0ya+q66d5ugfo3c1loYghPNRBa06Il78Uuw6KYuy+WMjlQnpLApLrAAiYuFoJX6XuH6lunaagoOZwgdBCN0LCHpln3jyHyIznn52KV81kLtwXDZAxD02kmfE0Y2r1bcnOa5PQxaGBYIQvk0SLTkgHtsphiTSmxOUa/qh7QHoaW4eHxDLvrdefWykUjwUEzKhhyCEb/j0hPzXbZom6fVxCv78BDCIaRlse6Fj1nrt4+PyxeuVBKfeBVkL/riAr7QE6P9u0wrXqT8ZwrcXYhIGwFhyEti2Akesg75Tqm6qx3b7UEIQAhHRqiNi2Ntqp0Z7Zznn5HGOEAQwnhgHvTxGeeE65e4yrXib5vXpXZBVIAjt7kQn3blJe2CHeG2csvgGJQk7lgCMbXom2/09h5A09O3A4nIhMDi8aAhCW3vjoBheGvDE0mczHTcOwDAQwBySXPTf1ytrpzlePyCGl6rvHEIaXhQslrGp6jb5s61adRstn+wY3RcRCGA+I1LY5psc79XIBTu13+wSDw3nt+VwJ0Y3vYfPzHb8ghZ+JkYtU69N45/ejBQEMLdpGWxHkePJq5RX9omcpepTn4n6dr1rMhuMCO1l1RHx0A6R72Y7ihw5eEAEgCUwohmZbEam4x8n5YtfimHvBG4cwO/OZdMzcA5GjyAI7WJjnZz/qdau0u+vUaZnIgIBLGhECntpjPLs1crSSvGHPWLeh1phNi/KZlM8PBad/bnhs7E4v6ClleK5PaJNpV+N5LflYGsEgMXFO2lePp+Xz+vaZelh+cIXYnaZdm0am+ThEwYwnJV/NgShNfkFba6Xb1WK5VViVAr7zRXKtEyGix/AVtJjWfFQVjyUN/tpY53YUCd/UCFq2uSVfdnVfdmIFDYiheUkMIft14oEGYRer/fuu+/+6KOPxowZ85e//CUpKen8r0O4+TQ6dEru9crPvXLrUfm3Bjksid0yiC8YhSflAthdYhTNHMhnDiQi8vpo+3H56Qm5tFL++yeirl3mJLB8NxuUQIMS2MB4lhlPnliWGq1zzZHEpAxm/8kvf/nL1tbWZ5999oEHHkhISHjqqafO//ppPp+vT58+Pp+ZTkTw+qjy6EkWm9ghlA6V2lTpF0RELX7Svv7wTu9DT4xinChaoRgHRXGKcxIRuTjFOr6RRpKoyS+JKCCoNUBCUrOfBFGzX6qCTgW+et+vCvD/879Ra4ACgiRRk486NWoJSK+PjnbIJh9lJ7BhSWyom65N4zf0Z31MdRqhz+dra2tLTk7WuxAra2xsjIuLc7lwaEK4qKrq9Xr79u2rdyG90KlRRbPc3ywPnaJDp2R1mzzSSjVtsl2l9FiWHkcDYtiAWEqLYemx1O+rf1PfaKbXPo3m5man0xkbGxvC3xlkEObn569YsWLIkCHl5eVFRUUVFRXnf/003YPQ6yNV0qmAbA1Qu0qnAtTkl00+ag6Q1ye9PvL6qbFTNvropI+8PtnkJ3cUJTiE28UTolisg+IcXz2Qr08UnZ5qPx1azX4piDpU6tTIL6gtQETkE9SufuNzZkTuKEZEDk4JTuKMEqOIEyVGMYVTV4a5o6hrNtMd9c9ZzXgnOTkxIreLXJz6RLFkF6XFsDSTP7cTQRgBCMJwM2MQnkuHSnXtsr6d6jtkfTsdbZf1HXS8Q9a10/EOOt4pE53UL4alRlNqNOsXTSnRlOxi7ihyR1FiFEuMojgnRSuUFMW6erlQMVAQxsfHNzQ0xMTEdHR0pKWltbS0nP/103w+X1xcXF5e3tm/85prrlm0aNHZr8/4ML5rBNYtIaklcM6pv1Mq6/pRv0btGiOiRKd0MBnvoFiHjHVQvEMmOmQfp+zjlO4oSnQId5RMiiK3UyRFSbdTuqMkEZ08eTIxMdHhwC3VcPH7/W1tbZhLDyuv1xsXFxcVFaV3IZalqmpzc3NKSorehUTCCR8/4aNGP2/0sxM+5g3wRh+1BFiLyk+p1Oxn7RrzadSsMlVQq8qIqI9Tdi3Wc3EZfY4BpYNTvON8qTTW3fpQfkdMTE//9ne73RfsuoPs2aWUjLGuf2iadsHXz8Q5f/31189+PSEhITEx8ezXX7ieznN8UNdY6lz6OL86MsDJKf6rP0kYUa/vmfn9fgRhWPl8PkVRur0AIFQ0TcOIMKxUVRVC2OQyTiS6pJc/0uxnXZ15p8Y6zzG8OX1v6Fyi/LxPnz49HxEqyoW3UgbZs6enp1dXV+fm5tbW1no8ngu+fibG2KhRo3r+XlelBVdjKDmdTqfTiSAMHyFE14esdyFW5vya3oVYFmMMn/B5pIbig2luVkL+IQd5u7OgoKCkpERKWVJSUlRURERlZWXdvg4AAGBkQQbhggULdu/enZmZuXfv3vnz5xPR+PHju30dAADAyIIMQrfbvWbNmpqampUrV3ZNiHctujn7dWt46aWXjh07pncVVnbw4MFu7xxDCL3xxhv79u3Tuwora2hoePHFF/WuwuJWr1796aefhvZ32v5EgZ5ZsmRJQ0OD3lVYWVVV1TvvvKN3FRa3fPnyyspKvauwssbGxtdee03vKixu/fr1n332WWh/J4IQAABsDUEIAAC2hiAEAABbC/JkmaD5/f6cnJwJEyZE8k0v3vr166+66iorLf8xmmPHjlVUVIwdO1bvQqzso48+ysnJGTBggN6FWNapU6e2b98+ZcoUvQuxsp07dyYlJeXk5PTw+5944omsrKzzf0+kg5CIdu3a9fnnn0f4TQEAwIYKCgoueHajDkEIAABgHLhHCAAAtoYgBAAAW0MQAgCArSEIe2rPnj1xcXF6V2FZpaWlw4YNc7vdY8eOxTFgoeX1egsKCpKTkwsLC71er97lWBMu4MgIUz+MIOyRpqam2bNnt7e3612INR06dGjOnDklJSX19fUFBQVz587VuyJLWbhwYXZ2dn19fVZWVrfPvoaLhAs4MsLXDyMIL0wIMXv27EceeUTvQiyrsrLyzjvvHD16dExMzJw5cyoqKvSuyFKWLVtWXFzscrmKi4tLS0v1LseCcAFHQFj7YWyfuLDf/va3TU1NzzzzDGP4uMJL07Ti4mLO+QsvvKB3LdYRHx/f0NAQExPT0dGRlpbW0tKid0WWhQs4fMLaD2NE2I0hQ4YwxhhjRLR+/foNGzY89dRTehdlNWd+yF3WrVt35ZVXJiYmPvfcczoWZj1Syq7PWUqpaZre5VgWLuDwCXc/7AjT7zW18vLy0/9ev379pk2bnE5n1/9kjG3ZsmXMmDE6lWYdZ37IUsqHH354+/btS5cuzcvL07EqS0pPT6+urs7Nza2trfV4PHqXY0G4gMMt3P0w5vp6AVOjYbJ58+Z77rnn448/dji++sssPj5e35Ks5P7773e5XE8++eQjjzyiquozzzyjd0VWgws4ksLRD2NECPorKyurqKg48zxA/MERQgsWLLjrrrsyMzNHjRqFx8aGAy5gs8MQBwAAbA2LZQAAwNYQhAAAYGsIQgAAsDUEIQAA2BqCEAAAbA1BCAAAtoYgBAAAW0MQAgCArSEIAQDA1hCEAABgawhCAACwNQQhAADYGoIQAABsDUEIAAC29v8Bw/33TwTVjmAAAAAASUVORK5CYII="
},
- "execution_count": 42,
+ "execution_count": 40,
"metadata": {},
"output_type": "execute_result"
}
@@ -1599,14 +1545,14 @@
},
{
"cell_type": "code",
- "execution_count": 43,
+ "execution_count": 41,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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v/1tV1fXypUr814kooGBgYceeqi5uTnvRYJ64oknLrjggsbGxrJPvv7669/61reO7bb5h/DQoUOPPvpovjsAMKWtW7du8eLFY7tt/iEEgBy5RghAaEIIQGhCCEBoQghAaEIY1+7du5cvX97Q0PDXf/3XBw8ezHudKDo7O5ubm+fNm7d+/frOzs6814nFfT53Tz/9dHa/6XPMhDCoF198cePGjd/85jcPHz68fv36a6+9Nu+Noti+fXtTU9Phw4eXLFmyY8eOvNcJxH0+d11dXddcc01vb2/ei4wmhEE9//zzV1111Tve8Y66urqPfOQjBw4cyHujKHbt2tXa2lpTU9Pa2nr//ffnvU4g7vP5StP0mmuu+cIXvpD3Imfg+wijGxoaam1traio+PrXv573LiHMnj37+PHjdXV1fX195513Xnd3d94bheM+n4vbbrvtxIkTX/7ylwuFSdcdzwgDWbZsWaFQKBQKrxx55JFHVq1aNWfOnJ07d+a4WChpmo78J0jTdGhoKO91wnGfz8Vjjz320EMPbdu2Le9Fzqwy7wWYOM8999wrH6dpunnz5r179957771vetObctwqmsbGxvb29gsvvLCjo2PRokV5rxOI+3yOfvKTn/z0pz+trq4e+cdCofCzn/1s7dq1+W71ikn3FJWJsXfv3uuuu+6Xv/xlZeW/fTE0e/bsfFcK4rOf/WxNTc2tt966efPmwcHBL33pS3lvFIX7/CQxCV8a9YwwqMcff/zAgQNz58595chku2tOV1u3br366qsXL168cuXK73znO3mvE4j7PK9l0pUZACaSN8sAEJoQAhCaEAIQmhACEJoQAhCaEAIQmhACEJoQAhCaEAIQ2v8HpdhsXgSAxQcAAAAASUVORK5CYII="
+ "image/png": "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"
},
- "execution_count": 43,
+ "execution_count": 41,
"metadata": {},
"output_type": "execute_result"
}
@@ -1617,14 +1563,14 @@
},
{
"cell_type": "code",
- "execution_count": 44,
+ "execution_count": 42,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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"
+ "image/png": "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3O2lD/xN9xCgDpz/SNE9AUCd8RwhAEA0QggAEI0QAgBEI4QAANEIIQBANEIIABCNEAIARCOEAADRCCEAQDRCCAAQjRACAEQjhAAA0QghAEA0QggAEI0QAgBEI4QAANEIIQBANEIIABCNEAIARCOEAADRCCEAQDS77gHXVlhYeOm7XLV/te4hQB1UfpdbWFioewWAumm8IfTlHba/+5+6hwB14D9/tri4WPcKAHXTSEMYHx8ffuuoCw/8TfcQoA6c/0iJi4vTvQJA3fAcIQBANEIIABCNEAIARCOEAADRCCEAQDRCCAAQjRACAEQjhAAA0QghAEA0QggAEI0QAgBEI4QAANEIIQBAtEb67RNKKd93x9XeN3WvAOrA+/0J3RMA1FkjDeGECRM+3v9l2bkduocEoZyjOTZbyG9uvFH3kCBk9LmxS5cuulcAqBvDNM0A3I3H43G73R6PJwD3herNnDkzPDz8ueee0z0ECFoFBQUul8tub6RXGrgCzxECAEQjhAAA0QghAEA0QggAEI0QAgBEI4QAANEIIQBANEIIABCNEAIARLMmhCUlJcnJyW63+5577ikpKbHknAAABIA1IVy4cGHnzp3z8/M7der04osvWnJOAAACwJrPGr3ppps2bNgQHx+fnZ09evTonJycK25w+bNGz549e/U/a7PZHA7H1cf/+c9/lpeX138brpCenu5wOMaOHat7SBBq2bLlvffeq3tFbVVWVp48eVL3iuBUXFwcEREREhKie0gQcrvdrVq1svac1nwmbF5eXufOnZVSl68Lr3kbr9d73XXXXX08MTHxnXfeufr45s2brxlO1FNoaKhS6t1339U9JAhFR0cnJibqXlFb2dnZ06ZN070iOJ06dap169aX/6zBWpMnT54+fXrtb9+qVatrXmv9nDVXhC1atCgqKgoPD79w4UJ0dPTVV3J8+0TjUVZWZhiG0+nUPQQIWvHx8enp6T179tQ9BLVizXOE7dq1+/bbb5VSeXl57du3t+ScAAAEgDUhTE5OTktLM00zLS1t9OjRlpwTAIAAsCaEc+bMOXToUMeOHbOysmbNmmXJOQEACABrXiwTGRm5adMmS04FAEAg8ckyAADRCCEAQDRCCAAQjRACAEQjhAAA0QghAEA0QggAEI0QAgBEI4QAANEIIQBANGs+Yg1Ak1NRUXH8+HHdK4LTxYsX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"
},
- "execution_count": 44,
+ "execution_count": 42,
"metadata": {},
"output_type": "execute_result"
}
@@ -1635,14 +1581,14 @@
},
{
"cell_type": "code",
- "execution_count": 45,
+ "execution_count": 43,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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"
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzdd0DN+/8H8Pc5jdMZKmUksiWjrEQhhSTJqIQyskP2yHata0tmQhFSUmhPDSNZoYzMhMqIxhmdzvr94X7v795rNT7nvD/nc16Pv9w65/1+3nvV83zW+02TyWQIAAAAUFV03AEAAAAAnKAIAQAAqDQoQgAAACoNihAAAIBKgyIEAACg0qAIAQAAqDQoQgAAACoNihAAAIBKgyIEAACg0qAIAQAAqDQFFaFMJnv48KFi5gK/JpFIpFIp7hQAUJlYLIbVK5WIgoqwqqqqT58+ipkL/Bqfz+fz+bhTAEBlX79+lUgkuFOAmoJTowAAAFQaFCEAAACVBkUIAABApUERAgAAUGlQhAAAAFQaFCEAAACVBkUIAABApUERAgAAUGnquAMAhbp582ZSUhKNRnNwcDA3N8cdBwAA8IMiVC2ZmZkbT8XSpGIdHR0oQgAAQFCEqoZGo6kZ91eTCOh0OCsOAAAIwTVCVaOurk6TimlSqZqaGu4sAABAClCEqkVNTY0mk9CkYnV1OBkAAAAIQRGqGk1NTbpERJOINDQ0cGcBAABSgCJULZqamnRJNV0iZDAYuLMAAAApQBGqFgaDQZMIaZJqTU1N3FkAAIAUoAhVC4PBoIuFtGoBk8nEnQUAAEgBilC1MJlMJBIgcZWWlhbuLAAAQApQhKpFS0uLJhIgOCIEAID/gXvoVQuLxULVAlm1gMVi4c4CAFCE1NTUZcuW4U5BAFtb271798pjZChC1cJms2VCvkwEp0YBUBVfv37V19fftWsX7iD1kp6enpGRIafBoQhVC5PJlFYLpNUCNpuNOwsAQEF0dXV79OiBO0W9vHnzBooQEIPFYkmFfAmcGgUAgP+BIlQtTCZTIuRLhFVwswwAAHwDRaha2Gy2SMCTSSVwjRAAAL6BxydUC4PBkEkl6ppaNBoNdxYAACAFKEKVo66ppaEJC40CAMBfoAhVjrqmpgYDzosCAMBf4BqhytHQYEARAqDKMjMzl63dKJEpaLrhgwdu/mO9giarEyhClaOuyYDNCAFQZR8/fnxUKuIPW6OIyZ5f07/3UBET1QMUocpR19BQhyIEQLWpazdGnQYpYiZ+GXr/RBET1QNcI1Q56urqaurwAQgAAP4CvxBVDo1OV6Or4U4BADU9f/48LS2tsrKSzWa3bt162LBhuBOB34MiVDl0Op1OhzMBAMhFWlraoi371DpYSctKOrMFUIQ/NGvWrE6dOi1evBghNHv27Hbt2q1YsQJjHviFCAAAhKmsrJR0sedOOMIftrqiohJ3HJJydXW9ePEiQqi6ujoyMnLChAl480ARqiKZTFH3TQOgYiq5XJEGByGEtBrweFzccUjK1tb2yZMnHz58SE5O7tq1q5GREd48cGpU5UjEYom6BHcKAKiprIIrY+gjhBCDLYAi/AkNDQ0nJ6eoqKiMjIyJEyfijgNHhKpHIpFIJGLcKQCgprIKLmJwEEKIwa7i83DHIS9XV9ezZ88mJCS4uLjgzgJFqHpE1cJqoRB3CgCoqYLLQww2Qggx2EI+HBH+1ODBg+/fv29jY6Orq4s7CxSh6qmuElQLq3CnAICauDz+X0WozpBJpSKRCHcikmIwGF26dCHDeVFE1DXC+Pj4pUuXFhUVGRoa7tu3b+jQoYQMC+ShukoglUpxpwCAmiq4XKTJ+vZndS0Wn8/X0dHBG+l7HA5HXPiAc8pTAXOJPxfSjZv+54sikejRo0cvX750cHBQQIbfIqAIJRKJu7v7hQsXbG1tIyMjp06d+v79+/oPC+RBIpGIhAKJGD6lAiAXfP7/jggRUmdyeDweCYtw2LBhYUf3lZWVKWa6Vq1a/ecr0dHRXl5ehw8fZjBIsSUcAUUoFovPnj07aNAgLpfLYDB+dsJXKpXu2bPn+68bGhqOGjWq/jFATZSXl2swOZJq4ZcvX2CTegAIV1lZ8dfNMgjRNZmfP3/Gfg1MKBR+/8TUiBEjsIT5xtnZ2dnZubbvkkqlfD6/tu/S0tL67RIiBBQhg8EYPnw4l8vV1tam0WjXrl372SufPXv2/RfFYjGcRleYkpISjQZ6atVVHz9+bNasGe44AFCNgMf7+4iQzuSUl5dj//0mkVDkcSlpna651uSgk7DnCDkcDpfL9fPzW7hw4e3bt79/AZ1OP3r0KFHTgbqprq5Wb6AvEwmFQiEJz9gAoOwEPC7S+t8RoVYDmUyG/QeNxWLRaDS8GQihrq4up/+YBNw1+urVKx8fH4QQm82ePn36kydk33FDlZWUlMh0DWm6BiUlJbizAEBBQj7371OjiKldUVGBNQ6oEQKK0NDQMCAg4OrVqzKZLCwsrEePHvUfE8hJcXGxqIGBWLtZcXEx7iwAUI1YLBYJq/4uQomWTnl5Od5IoCYIODWqpaV18eLFRYsWvX792sTEJDAwsP5jAjl5WfCmSseIJqoqeFOIOwsAVFNWVqbJ0an633lIsZY2FKFSIOYaoY2Nzd27dwkZCsjV4+evZfqOMpHg8fMs3FkAoJqvX79qcBr+vVyFkNGw9MsXnIFAzcCi26rl+YuXaERbJBI+yTiNOwsAVPPp0yc17UZ//6OUrV/8Ef9D1Zqamnl5eQsWLMAdpF5evXqlri6vwoIiVCEymazwZT4y6IjEwtfP4J4mAAj2+fNnGef/ixBpN3lXkoMvzl9GjhxZWVlZWlqKO0i9tG/fvl27dnIaHIpQhbx580adpSNk6iCEJDJaSUmJgYEB7lAAUEdxcbGowT8ez9UxeP+UFLdne3h44I5AarDotgrJyclRa9Xt258Zrc3u37+PNw8AFPO+qLiK848Pl7qGJcVF+OKAmoIiVCF37uXwmnX/9me+YY87d+/hzQMAxTx9+Uba8B+brTds8el94ffLmwGygSJUIUkZNyRtLL79WdTaIjkTbhwFgEgvCt4g/Zb//88MthqD9enTJ3yJQI1AEaoKiUSSl3MHte3z1z+363vv9k34rAoAgQpePkdN2v/zKwyDti9evMCVB9QQFKGquHPnjmbjloit99c/6zRDrIa5ublYQwFAHXw+v/JrKdJr8c8vSpp0+OFmA4BUoAhVReqVNKGx7T+/Iu5om5p6BVceACjmyZMn7BbGiPavX6q8Rh0fPoJHlcgOilBVhEcnCDsO/udXqjoOCY9OwJUHAIrJy8uTNOvyny/Kmpveup+HJQ+oOShClfD169fHD+6hjgP/9dUuQ+7dyqqsrMQUCgBKyb6bwzMw/e9Xjcxyc2D5SbKDIlQJcXFxjC42SJP1r68yOIwOfZKSkjCFAoBSrt/OkbX8bu8dPaNqsaSoCJ4mJDUoQpUQFBJeaTrm+69XdB19MvSC4vMAQDFisTg/Nwe16vn9txjtzH+4VzkgDyhC6qusrLyemY66jfjB93qOSk1KFAgECg8FAKXk5uYyGhshlu733+IaWVy9cVPxkUDNQRFSX0REhEZn2x/+iKIGTTTaWURFRSk8FACUkpWVJW7T94ffkrSzTM64ruA8oFagCKnvcOCZyl4Tfvbdil7uhwNhSyYA6iUmJYPfZsCPv9fOMj/3flVV1Y+/C0gAipDiCgoK8nIfIrPhP31Fz9G3b2XDxXwA6kwmk13PzEDGPylCTZZWy843b8LZUfKCIqS4gOOB0j4TkDrjp6/QYKKezieCTiouEwDU8ujRIymD869VRv+N184mCRavIDEoQioTiUT+xwOFVtN+/TJBv+kH/I9JJBLFpAKAYlJSUyUmtr94gdhkUFRCqsLygNqCIqSyS5cuSZp0QIadf/O6lj2E7Kbx8fEKCQUA1UTEJAk62v3qFe37vXj66MuXL4pKBGoHipDKtvkerLCaXZNXVvTz2uZ7UN55AKAeoVB4O+saMrH51YvUNRnGVleuwNlRkoIipKycnJxnr96gnqNq9GoLtwe5j2AzCgBqKz09XauVKWI1/PXLKjsOjYiGky4kBUVIWVt3+VYNnIPo6jV6tZqGsP/0XfvgoBCA2rkUE881sf/ty2Smw+Pj42EHUHKCIqSmd+/excXFSfpPr/lbxAPnXIiIKC4ull8qAKjnUnSsxNTx969r3EaqpXPnzh35JwK1BkVITdt27ZVYeSKmTi3ew9aTWYzz3Q8HhQDU1OPHjysF1ajFd5tO/Iiwq+Ol6Bh5RwJ1AEVIQaWlpSdPBVcPWlDbN1YNWXrYP6CsrEweqQCgnouXo8TdnGr44mozp9BIWM6QjKAIKWjnHl+puSvSbVbrd+oZSc2G74ODQgBq5kz4JaFpTYsQtetbXFxcUFAgvzygbqAIqaa0tPTgEf8qu+V1e7vAfuVevwMVFRXEpgKAet6+fVvw6sVPV1b7Ho2OzBwvRETKMxSoCyhCqtm+a4+sp/MvVnv6jSbtxV3s9+zbT2goACjowoUIencnpKZR87cIujufPAc7gJIOTTG38woEAj09Pdj3Tt4+fPjQtmMX/urbSK9F3Uf59Iqza8CbF0/19PSIiwYA1ZhZ9M+1XIFMHWrxHolIy6dV/sO7LVvW9aMqkAM4IqSUdRu3SC0n1asFEUKN24p7Om/6cztBoQCgoMLCwhfPn6HOQ2r3NjUN1HP0udAw+YQCdQRFSB0vXrw4cy60yn5F/Yeqclh97ERQYWFh/YcCgJJOnw1BPcfU6rzoN1U93Y4Fh8gjEqgzKELq8F7qIxqyGHEaETCWTrPqgXMWrlhNwFAAUNGRE6cEFhPr8s6OAz98KX/w4AHRiUDdQRFSRGZm5rVb98SD5hM1oNhuSVJqenZ2NlEDAkAZWVlZ5UIZate3Lm+m0ap6u/sfDyI6FKg7uFmGCiQSiUm3Xi+tV8t6jiFwWNrNEOPbBx7n3KLT4QMTAP9vrPvki1IzyZCFdXz/l3fsbb0/vi9ksViE5gJ1BL/gqGD/wUPFao2IbUGEkKzPhPdiZsCx48QOC4BS+/TpU0xsjMRyUt2H0GtBa28Vcu4ccaFAvcARodJ79+6diVlP3pI0ZGBM/OjvH3H22z9/9MDAwID4wQFQQmvWb/C9USIYX78FmJ6mt7g0/82zx3C6hQzg/4HSmzp7nshmrlxaECHUvIvQatpM70VyGRwAZcPj8Q4c8hfY1Hoh3/8ysSmnc2JiYA1uUoAiVG5nzpzNevyqemgdF1SrCdHwVVeycy5ERMhvCgCUha/ffqmJLSGfOyvtVi1buxF2KCQDKEIlVlRUNGfhEt6kQKSuKcdpNJj8SSdmzJn/8eNHOc4CAOmVl5fv3LOP57CWmOG6OxULaBHwEZMEoAiVlVQqdZs0VWjthVp2l/tkbfsI+kye4DkDPr0CVbb2j02Sbk7IoCMxw9Fo3JFb5y9bWVVVRcyAoK6gCJXVzt177xdxRQ4rFTNdtdOG7JcfDxw6rJjpACCbp0+fnjh5mu+0ichBOw2qbGK6c/deIscEtUdMEUZGRnbt2lVXV9fa2vrZs2eEjAl+4datW5t37OZ5BiO6uoKmpKvzppxctX7j/fv3FTQjAKQhlUonTJ1Z7bgWNWhM7Mg8l1079u6DX5t4EVCEr1+/9vT0DAwMLC4udnJymjp1av3HBL/w5cuXka7jBeMP1n2vpbpp0k7g7m/vNObLly8KnRcA3PYfOPiikiYZOJv4ofVbVQ1fM37KDKlUSvzgoGYIeI4wNTU1PDzc398fIfTp06dOnTp9/vz5P68RCAS6urrr16///u3Nmzd3dXWtZwbVIZFIHEa73mV1rx7zJ5YAjPAllujV5fBz8PwTUBGPHz+2tXfkL7+KmrSTywQyKdtv6EJn21UrlsllfNXGYrF++8uKyAfqJRKJt7c3nU4/dOjQf771rQi9vLy+f1fr1q1nzJhBVAbKW75yzZlrj3nzohV3UvQ/JCLWgeEzhlls2bAOTwAAFIjP51v0t3k30Efa10OO01R8YG/vG3H6hJWVlRxnUUksFktNTe3XryGsCJOSknx8fOzt7bds2aKu/t/f0bCyDCFOngr2XrOZt+I6YjXEmaPyE2tn/xP7to0fNw5nDADkTCaTjRo7IeWTlmDSMblPlpegFzb34Z2bzZs3l/tc4N8IOKqQyWQ+Pj5ZWVlhYWHGxvJZ3wQglJ6ePm/JCv6iZMwtiBBq0Jg/+8L0OQ4tjYzgAyygsPUbN1958EKw5IoiJus6rOK91yAHp3tZV9lstiJmBP9DwGWezMzMqKio6OhoQ0NDLpfL5XLrPyb4j6dPn45yHc+fGoyameDOghBCqIUpf/KJ4aNdX758iTsKAHJx5szZvf6BPK+LSIOpmBnF9ive6nR2mTBJIpEoZkbwDQFFmJ6enp+f37Bhwwb/U/8xwT8VFRUNtHPgjtqGTGxxZ/mHrvaVDuushwyDFWcA9SQnJ3stWs6fG4V0FLrcvGBiwNW3Avcp02DxCkWC3SfIrqKiwrzfwIJObqKhZLyjTCN2c8tnl+9cz9DV1cWdBQBiZGRkODq78bwiURsLDNMLuez9w6Y5Dti/dzeG2VUS3AFPajweb+DQ4YXNrcnZggghkeO6980s7Uc6w6ccQA3Xrl0b4ezGm3oaTwsihBgc3ryYwOiMuQuX4AmgeqAIyau6unr4mLH5Gm2ELjtxZ/mVqnF+DyVN7UaMFgqFuLMAUC9paWnDRrlwp57BfBmCpcvzjgmOTfdetBTOkSoAFCFJiUSiEc5utys5gknHEI3c/5to9KopgTkVWi4TJonFYtxpAKijS5cvj3AZz5t+DpnY4M6CEFuPtyDhZMKNidNmwr0z8kbu37CqSiKRuLpPvv5eKJgSiOi/eRSUFOjq/Okh6W/4Y9zcoQuBMgoMOukxfQ7fOxoZD8Cd5X9YDXnz4y/nFDq5jIMdKuQKipB0xGLxmHEeKa8q+LMvIHUG7jg1pq7Jm3Eu7eXXCVOmwQdYoFzWb9w8f81m/qJk1LIH7iz/xmDzvC6mf1K3sh0Ka/zKDxQhuYjF4tFu7qmvKvgzw+S73a48aGjxvCLicovGTfSELgRKQSQSTZo6w/dsFH9ZBiH7zhNPXVPgGfxIr093i36vX7/GnYaaoAhJRCQSjXIdn/aGz591XpmOBf9Jg8mfExn/5IOr+2Q4RwpI7suXLwOGDIvM/chdmIy0m+KO83M0WvWYP4ss5/Xo0+/atWu401AQFCFZCIVCh1Eu6e9F/JlhytqC32gw+bMjkp9/GTV2gkgkwp0GgB979uxZt96W99nd+bPDEUMJljSTDJxdPvHE0FGugSdP4c5CNVCEpMDn84c4jsoqY/JnnFO+M6Lf09DizbqQ9k40bJQLPFMBSCghIcHcyrpo4HKh83ay35X9T52HCBanLFi7Zf7iZXD1gUDK8zeAuioqKqztHO5WN+F7nkJqGrjjEERdUzAj5GYZc5CDE4/Hw50GgP+3x9fP2d2zctpZqdUU3Flqz6Ajz+dm0NV866HDv379ijsNRUARYvb169f+g+0faZkIJh1Tjiclak5Ng+95Kkdm1GeALdzwBsiAx+ONHjthw5EzglU3kbE17jh1xdTmzQq/y+jSpadFbm4u7jRUAEWIU3FxsXm/gc+aDqiacFCZzs/UHF1N4H7kRZO+ljZDYG1ugFdhYWEvq4FJxXTe4lTUUMn3/KOrCZ13lAz9o88A21OngnGnUXpU/OWrJAoKCsz7DSxsM0w4eivuLPJEowld97w2ce1lZV1YWIg7DVBRcXFxXXtavDCbIvA8qbBtleRN1ttNsDBx7qqN3ouWwk3a9QFFiEdeXl4vywEf+i8Uj6F0C/6PaOjyEotZ5lbW+fn5uLMA1SKTybZs2+E21aty5nnJQC/ccYhmZMZfdevkjZd9rAcVFxfjTqOsoAgxuHnzppXNkK8jt0usZ+HOojjiQfNL7df3GWB79+5d3FmAqigtLbWxd9x+Jo7ncwO1s8QdRz6Y2ryZYblNbbr2tICnDOsGilDRkpKS7BxHVU48LuvthjuLokktJ1W4HRw4dHh6ejruLID67ty507m7ebZGF97CBFI/L19/NLrIcd2XcUfsR43dtccXNqyoLShChQoNC3N2n8KddQF1tcedBQ9Zdyfe9BBHl/EXL17CnQVQ2aHDRwYOdfw0crdwzJ+Iro47jkJ0tef7XN949NwIZ7eKigrcaZQJFKHi7D94aPqC5bwFCahdX9xZsDK25nvHTJzlffTYcdxRAAVxudwxbu4+u/35yzJkPUbijqNYeka8JVeuVDbq1N38wYMHuNMoDShCBVm5dv3q7X78JWnIsDPuLCRg1I2/JHXphu1/bFaJe4WAwjx69KhLj96Jn7R4y6+iJu1wx8FBnVE1fn/xkPWWNnYBx0/gTqMcaIo5mywQCPT09AQCgQLmIhuJRDLDa96F9DvcuZdRgya445BJeQn78MjxQ/sFHNpPp8NnMlBfgUFBC5b6CMbskFpOxJ2FBEry2ScmOFj2OHnsCJutBIupYgRFKF8CgWC0m/v1t3zezFDE4OCOQz6CCnaAq61xkwshwQyGMi81DrDi8XjTZs+Nu3aHOz0UNTPBHYc0RAKtsEWN39+Mu3i+a9euuNOQF3wMl6Nvy6ddK2Pz5lyEFvwxpjZvXkxqCa3/4GHl5eW40wCl9ODBg07dzaPf0bkrbkAL/osGs2ri0XcDV/SxHnTE/yjuNOQFRSgvb9686d6n3yO9vvzJgdRZSlse1DUFnqdyOaa9rKzfv3+POw1QMgcPHbaytXtnu1owMQBpsnDHISNZXw/+0vRlu/wdnd3KyspwxyEjKEK5yMnJ6dW3f3HvmcLRWxGNhjsO6dHoQtc9b7pO6G5hlZeXhzsNUA6fP38eOmL0St8T/GWZMovxuOOQW9MO/OVXr3CbdDTtAQ/dfw+KkHiJiYnWQ4Z9GbNXZOuNO4syEdstLR2x1XLg4LS0NNxZANlduXLFxLRHpsiItyxTRe8OrS11RpWb70fXQ/bOE5asWAmbZv8TFCHBAo4dd/bw5M48L+s5GncW5SPrPY477ayj64QgWFAf/ERVVZX3oqVO46eUuh8Xjt1LhY2sFamLHd/nRkDSPfN+A1+8eIE7DVlAERJGJpMtW7l6ycYd/CVXUHsr3HGUVseBgkXJ3iv/WL3+D1gpCvxHXl6eWW/Lkzff8FffRp0G4Y6jnHQMePNi8jpNMuttuXefH/yUIXh8gih8Pn+sx5SM/GLerHDEaYQ7jvKr+MA+6jK0e/uQUye0tLRwpwH4icXiLdt27PLdL3DZJeszAXccSijJZ5/yNG/b9GxgQPPmSr5BY/3AESEBiouLLfrbpH+g8+bHQQsSQ7spb3FqwntkMcD2w4cPuNMAzB49emTW22p3ZCZ/5U1oQcIYdOQtv3pDp5+JWU//owG40+AERVhfd+/eNTPv+6zNCP7U05TZ8JMU1BmCKUH5hoO79bZ8+PAh7jQAD5FItGHTFosBg/K7zeDNi0F6LXAnoha6umjocu78+OU7j9gOG/H27VvcgfCAIqyXsPPnbYYOLx29W+SwCh6TIB6NVu204ePwPy1t7CIiInGnAYp2+/btTt3N917O4q+8Ke0/FXcc6mphyl1x/Rqrt0m3XvsPHZZKpbgDKRpcI6wjiUSyYvVa/+AwvlcEag5rF8lZYQ7r6NhFs6du/mM9rEqqCrhc7sq1G4JOhwicd8r6wDOCilL8lBPi1V6XfvbE0c6dVWh7ACjCuvjy5ctoN/d7xQLejBBYR1tBuJ9ZJzzMmzEvhZ1p2LAh7jRAji5fvjxz7gJ+exvemO1w0V3RZFJ6ZgAjZvM8r5mb1q9lMlXicg98uK61+/fvd+nR+5ZmF97CRGhBxeE04nvHZKM2puZ9YfUZqnrz5o2d46iJ81d+8gjkTToOLYgBjS4d6CVYe/dQ5qtWHbvGxcXhDqQIUIS1cyIwqP9g+w8OW4TO2xFdDXccFaOmIXTzLbJd3cd68JkzZ3GnAUQSCoUbNm3p3N08XasXd/UdZGyNO5Fq0zEQTA3+5HJg7MyFQxxHFxQU4A4kX3BqtKYEAsHMufMvp2VxZ4Qhg46446i2949Yx8e5DR/iv38vbN5EAfHx8dPnLqho3JXnshvpt8QdB/yDWKiW7Kt5Zf/ShQvWrFxO1Yd6oQhrJD8/39HZrUjPVDD+IGLAFpckIKhghXgZ8V/FRp5v1w6WmlRWz58/n71gya3cfJ7rXtTVHncc8BNf3rIjl7OLcvz99owZMwZ3GuLBqdHfOxsSYm45oKD3XMGUIGhBsmBq86eHPDed0s3CKjz8Au40oNYqKyuXLPfpbmF1Vbs/b20OtCCp6RnxZoR+dPOftHidpY3do0ePcAciGBwR/gqfz585b8HllKu86edQC1PcccCPFOawT7i7jRh6aN8eFbnDTdlJpdKgoJPLVq8TmtgJRm5GOga4E4Eak4rpmQGMuD/dx43dsWWjvr4+7kDEgCL8qSdPnoxwGVes300wfj/sL09qVZVaod5NPz2IvhBqagqfV0gtOzt7xrxFBRUSrsse1K4v7jigTvhftZJ3q2cFr1q2eOniRRS4Tg+nRn/s0OEj5v0GvrZaIpgSCC1IdloNqjxPvbVcaDlwcMCx47jTgB8rKChwchk3eNS4R728ucuvQQsqMVbDqlFbuQuS/gy70qFrDwo8YgFHhP9VXl4+afrstPvPuFPPoKYdcMcBtVGSzw6c2N+03bmTx+Ghe/Lg8Xh/7tjlu/+gyGau2H4ZLMlLKU9SOZHLu7RsGnBgr5mZGe40dUTYEaFEIjExMSFqNFyuXr3avrNZEq8Zd9lVaEHlY9CRt/xqhsCgU7deWVlZuNMAJJVKT5wIbNHW2DfjtWDtPfGIddCCVNNpMHdl9u0WI/ra2E33mldaWoo7UF0QU4R+fn5WVlb5+fmEjIaFRCJZ98cmhzHjPo89KHTZCdteKysNrSq3fR9G7Rk8wnnT1m0quHwweWRnZ3ez6Ldo59GyaaGCSceRbjPciYB8qGlIbecJ/sgNec9u3bHL1m07hPR0QUsAACAASURBVEIh7ky1Q8yp0bS0NB6P5+Tk9LPRBAKBrq6uj4/P998yMjKaMAHzBmNFRUXjp0x/xtXgeZ5EOvDjSglf37NPTumirxYSdKxp06a406iWwsLCxT5rrt3O4Y/ehsxdcccBClT8lB25XKf81f5d2+ztSfFIDIvF+u1K/UReI6TRfjratyJcuHDh999q2bLllClTiMpQB8nJyVNnzxVYzxMNW4FocPcQhUgl6nF/sm4cP33c39bWFncalSAQCHbu8T18NEA8aL7IbinSoOZCJOA3cuNZEct6mLQ9uHs79vUuWCyWmtpvlsNUXBGS8GYZsVi8fNWagOBQ/tRTqH0/3HGAfDxNZ52a6j1r6p+b/vjtzwOoj4iICK8FS/it+vJHb4cddFWduFrtygHN5D1eM6dv3rCOzSb1UiSqW4QlJSUjXMY9FbB5k0/AIvcUV/mRfdLTtKEsKvxc48aNcaehoOfPn0+fMz/n5TvuWD9YLxv8v/IS5qVVrFdX/ffvdXVxwZ3mp1T0TOC1a9c6dzd/qNuHN+citCD1NWjC846912RQp269bty4gTsNpVRVVa1cs667hVVWo8HcVbehBcG/6BgIpgSVegR5Lt3Qf/CwFy9e4A70Y6pYhPsPHrIfNfbrhADRmK1wUVBV0GjVQ5eXuh6wc3KGh+6Jkp6e3q6z2YErT/lr7oqHLEJ0ddyJACkZD+Ctvn2z0SCz3pZbt+0Qi8W4A/2Xaj1QLxaL5y5cci4ujTs7EjVqjTcMwOPjS5a/s+vQAcePHNTQ0MCdRlmVlZXNW7zsclwyz80PdXPEHQcoidI3rFDvZqIPYaeO9+rVC3ea/6dCx0NlZWVWtnZnb73hLs2AFlRdTdrxl2dG3HtrY+9YUVGBO41SSkxMbN/ZLPKdJm9dDrQgqAX9Vvx50a8sF1sPdVy1dr1IJMId6C+qckT49u1bazuH4tZDhC474HQoQFIJ4/ziliU305NiDQ0NcadRGlwud/7iZRdiErkeR5EJPJEC6qq8hBUyp3l1UUTIKTIslK8SlfD48eMeffq96z5F6LoLWhAghBBdTTh+f0Enlx59+j1//hx3GuVw//59k269wp4LuavvQAuCetEx4M+5+KL33L4DBx86fAR3GhU4IszLyxsw2L585DZZH8zr1wASol8/qZuw6UZ6SseOHXFnIbWgU8Hzl6zgu+ySWYzHnQVQSOkbdqBHP2PD0OBAjAvlU7wIc3NzBwy2r3DeLTMfq+CpgbKgZ53RiV13Iz2FAqvGy0NVVZWH54zEO49500JQE8yrhAAKEgu1In30XiSnxF7u1KkTlghUPk/45s0bm6HDK5z3QAuCX5BaTiwbscV6yLD379/jzkI6RUVFvfvbJBSKeEvSoAWBXKgzqtz2Fdtt6N3f5vLly1giULYIS0tLrYcMqxi0RAZr/oLfkfX1+NJvTv/B9l+/fsWdhUTy8vLMzPs+bePEn3oaabJwxwFUJuvtxpsd4T5jnt+Bg4qfnZqnRiUSSf/B9vfYParH/KmYGQEFMM4v6Ut7dSU++rdr1auC27dv2zmOgssKQKFKC1kHHGa7O+/duV2R01LzB371ug25pZLqUZtxBwHKROi6887bik1bt+EOgl9aWprtsBHlHsegBYFC6bfkL00LiEj0XrRUkdNS8IgwPT3d0W0Sf9VN1KCJAqYDlFJWzNreNyU6wtLSEncUbLKzswcPH8mbHgILhwI8+GVsv6Hz3Udu27xRMRNS7YhQKBROmjGH7+YHLQjqQrcZ33XvuMnTlG6LbaI8fvx46IjRvInHoAUBNixdnnfMgVNhe3z9FDMh1Ypw7R+bvjTphro74Q4ClJa5yxdd4z937MKdA4OvX7/aOY7ijvwTmTrgzgJUW4MmPO+4dVt3JiYmKmA2Sp0aLS4ubtfJVLD2HtJtJteJAMWVvmFvtyx4/qRRIxXaoksqlQ4cOvy2uonQVRU/BAAyenG9wfHx925ea9++vVznodQR4dqNWyRWntCCoL70W4l7j9uwRbXumtm7zy+niCd0Vq1/a0Bq7fvxh/q4uE+WSCRynYc6R4SfP382amdctfERbLQLCFBWzNzcvbjwtY6ODu4oivD06dNeVtb85ddQ4za4swDwDzIZ+4DDyglD167ykd8k1Dki9A84Ru85CloQEEO3Ga2r/YnAINw5FMRztnfV8DXQgoB0aDSeR8C2nbsLCwvlNwl1ivBQQCC/32zcKQB18AfM9vNXib3so6KiHhUUSa1n4Q4CwI/otxTZzFmwfJX8ZqBIEWZnZ3Mlaqg1ibY8BkqvnVVpBe/hw4e4c8iXTCZb5LOWO2YHoqvjzgLAj4nsliZfSc/NzZXT+BQpwrNh4VW93HCnANRCo1X3HBsSeh53DvmKj4//JKShLva4gwDwc5osoc28jdt3y2l4ihThhYtR4m4jcacAVCMycwq7GIU7hXxt2e3HHbwM0Wi4gwDwKxLrWbExMR8+fJDH4FQowvz8/HKeALUwwx0EUE5biw8fPrx58wZ3DnkpKirKuXsH9RyFOwgAv8PUoXcfcTbknDzGpkIRxsXFy0yHwUdaQDwandZ1aEJCAu4c8nI25BzN3BlpMHEHAeD3+L09jp48K4+RqVCEF2ISBSZwhQPIBd/EPjyaskUYdjlO0GUE7hQA1IyxdeGb1x8/fiR8YKUvQj6ffzf7BjKxxR0EUFTnwdcz0ii5Bjefz8+7dxt1HIg7CAA1Q1fTNLFOSUkhfmDCR1SwlJQURntzxNTGHQRQFKcRw6hzZmYm7hzEu3//vlaLjojBxh0EgJqqNLK4dvM24cMqfRGGRl6uNBmOOwWgMm5nx9CIS7hTEO/Bgwei5nCLGVAmspbds+7eJ3xY5S5CkUgUdfmyrOcY3EEAlUl6jY2IiJT3sr+Kl//iFV+/A+4UANRGkw5vC14RPqpyF2FycrJaM2OkZ4Q7CKC0xm2kOgYZGRm4cxDs9btipANbtQClomNQ9qlEKpUSO6pyF6Gf/4lKC0/cKQD1cS2mHAgIxJ2CYGXlFYipEntrAOpQ16SrqVdVVRE7qhIXYXFxcWZGuszcFXcQQH2yvu4J8XGfP3/GHYRIMpkMwcO3ACh1Ee7y9ZNZTkRaDXAHASqA1RD1cvXdfxB3DiJpMRhIRMHHQgCVyWRSqURdneAF4pW1CMvLywOOnxDaLsAdBKiKqiGLDx725/F4uIMQprWRISovxp0CgNrgfmJxdDQ1NYkdVVmLcNvO3VKzEUi/Je4gQGU0aS82GbRzjy/uHITp0Kal5pcC3CkAqI3PBU2bE393pFIWYUlJyYFDRwTD1+MOAlQL33HDHl8/ylwpNO/Vi/mW+GeTAZCjV7f69elN+KhKWYSLlq8S95uK9FrgDgJUTOO2Eovxy1evw52DGObm5oKCXFTNxx0EgJrivMmy7d+X8GGVrwhv374dFZ9UPWwl7iBAFVWN+OP8xahbt27hDkKABg0a9OprhR7G4w4CQM1U80W5ScOHE7+UmJIVoUgkmuA5s8plJywuCvBgagucNnnO9qbGQjMzJ47j3JPLBm8AEO9BTE+Lvo0bNyZ8YCUrwm07dn1gNJP1dsMdBKgumeWkt1JtX7/9uIMQYNy4cbSXN1HxU9xBAPg97Yz9qxbNk8fIylSE+fn5O/bu446j1LNcQPnQaNxxBzds/vP169e4o9QXi8VaMG8O8wp1boUFlPU4RVfKHTFCLttnKk0RSqVSd8+ZQsd18MgEwK9JO+HQ5eMnT5fJZLij1NeyJYs08uLR2we4gwDwc1IJ55KP7/bNNJpcFkNSmiLct//As0qaxHoW7iAAIISQZPCCx5/4/kcDcAepL11d3Z1bN3EuLEYyghcyBoAo9MyjXYyaODs7y2t8Qkb5+vWrk5OTnp7eyJEjv379SsiY/1RQULBu4xauuz+iKU1zA4qjq3HdA5avXvf+/XvcUepr5ozp7RvI1FKpcNUTUNCH51pxW08eleNFMWJ6ZceOHa1atSouLm7ZsuXOnTsJGfOfJk6fXT1kMWrSnvCRAag7w07VA72mzJqLO0d90en0yHOntZJ2oXe5uLMA8G8SEfvklG2bNpiYmMhvEmKK8OLFi97e3gwGw9vbOzIykpAx/3b+/PkHr0vEdouJHRaA+hPZ+9zMfRYVFYU7SH21adPGf78v65gb4hN/RgeAOtMKX2ppbDh/nnw/btIIudrP4XA+ffrEZDIFAkHTpk0rKir+8wKBQKCrq7tw4cLv39uyZcspU6b8bGSBQNC5R+9Sj0BkbF3/nAAQ78mVRqGzHuXcZjKZuKPU1zKf1WevP+XNi0Z0NdxZAED0a4GG13yzM680aFD3XYZYLJaa2m/+PhNzRCiTyb7dzCOTyX7xoLHWjzAYDNrP7dm3X9DaCloQkFenQfzmPQ/7B/zir7Gy2PHnZrOGMkbYItz/TQFA6EkqO2ZD9IVQbW3tev7F/u1UxBwRdujQIS4urkOHDs+fP3d0dHz27Nl/XiAQCPT09AQCQa2GLSsrM2rXkbssEzVuW/+QAMjLh+cNfAe9e/VMW1vpFzyqrKzs3d/mdftR1Q6rcGcBKux9HvvA8IRL4f3791fAbMQcETo5OQUGBspkssDAwFGjRhEyJkJo99594m5O0IKA7Jp2EHeyO3DoMO4cBGjQoEF6Yqz+3WC1jKO4swBVVZLPOjji9PEjimlBRNQRYVlZmYeHx4MHD3r27Hn69GkdHZ3/vKAOR4RisbhJi9Zf58Sg5l3qnxAA+Xr7oNFxl5LCV7+9GqEUCgsLe/e3+Wy7XDpgBu4sQMWUFrL3Ddm7ac2smYr7u0fMhve6urqxsbGEDPW36OhoSeP20IJAORh1q27QLCkpycHBAXcUArRs2fJaamKfAbblGkxpXw/ccYDK+FzA2jd0z6bVimxBROaVZUIuXKrs5oo7BQA1VdnNJTTiMu4UhOnQocPNzCsN49bTs4JxZwGqobSQvX/YtrXLZs+aqeCZSVqEMpksMTFBZkqFD9dARchMh8fExeFOQSRjY+Pracm6cX/QrwfhzgKo7sNz1t5Be/5YucBbLvtL/BpJi/Dt27cSmjqsrw2UiYExn8f7+PEj7hxE6tix483MK42S/1TPOII7C6CuosfMfUP3b/tD8ceC35C0CPPz8zUMjXGnAKB2GIYdvn92SNl16NDh1vWMxlf3qyfvxZ0FUFHhfdZ+h+N+u6ZPm4orAkmLsKSkRKrTHHcKAGpH1rBFcXEx7hTEa9Wq1e3rGYb3TjJiN+POAqjlVTbrkNPpY4fc3SdgTEHSIhSLxVI1Yu5oBUBhZHT1X6yspNSaN29++3qG0fMozYurcWcBVPEsk+XvEnH2pPOYMXiDkLQI1dTUaBT9hQIojCaV0Okk/ZmqvyZNmmRnXmlfnKF1fjFS/h2JAWaPklnH3WMjw4YNG4Y7ClmLsEWLFuplb3GnAKB26F8KjYyMcKeQIz09vRtpySYV97XOzYWNfEGd0R7GcoKnJsdctLGxwZ0FIdIWYdu2bUUlL3GnAKB2hB9et2nTBncK+dLR0bmakmAqesk8Mxu6ENQBLSeKE+KVlhhrZWWFO8tfSFqErVu31qBJUWkh7iAA1FhJPofDMTAwwJ1D7jgcTnpibDf0lnV6JpLCJQxQC7R7lxqc905PijM3N8ed5f+RtAgRQv0HWKP8dNwpAKix/Awbm4G4QygIi8W6khDTTa2YeXomHBeCGqLlRDUIX5CRHN+zZ0/cWf6FvEXo7jKywYMLuFMAUFPa98PdXQjbeoX8mExmSuxlM9p75plZ0IXg9/IS2WHzUuOju3fvjjvKf5G3CEeNGiV+kY3KS3AHAaAGvryVvn80fPhw3DkUisVipcRFmVS/0gpfgjsLILcnqZzT06/ER5PqjOjfyFuELBbLzc1N/eox3EEA+D3NTP+JHh6ampq4gyjat+uFbT7d0oz+A3cWQFavb7FPTom9GN67d2/cUX6MmP0If6tuO9S/evWqa6++gi35iMGRUzAACCCoYK43eXL/TqtWrXBHwePz58/m/Qa+7zlVPHgh7iyAZIoes/zsI86eJMPzgj9D3iNChFDbtm1tbW1gp2xAchppB4Y7OKhsCyKEGjVqdP1KUsOrB2k3z+LOAsikrJh5eNShvTvJ3IKI5EeECKFnz55179NfsOEh4ujLIxgA9VX5ibmpW97d7LZt2+KOgllubq6VzRDu9BBkbI07CyABQQV7r80ar8mrfJbjjvIbpD4iRAgZGxtPGDeWEb8VdxAAfkwresO0KZOhBRFCpqaml86HsAInoo+wGobKk0qYgRPHDh1A/hZE5D8iRAh9+fKlTccuFXOiUEvS3XQLVF3BHd1jrq/zH+nq6uKOQhZH/I8u/9OXt/waYurgzgKwYVxYZi56mp4Yq66uBNsnkP2IECGkp6fnu+NPTpg3rGEByEUi4pybc2jfbmjBf5rjNdt9hB371FR4uFBl0bJDGj1PiIkIU4oWREpxRIgQkslk1nYON/UGiocuIzYYAHWmEbu5n+BeWkIM7iCkIxKJ+g4cnNfUttpxLe4sQOHePmAfdMzOvNKlSxfcUWpKCY4IEUI0Gu3MiaOMFF9U9AR3FgAQQggV3te6GnA2MAB3DjLS0NCIjTzPzjqBnqbhzgIUS1DBPjHh2CE/JWpBpCxFiBBq1aqV367tnJMTkagKdxag8oQ89slJ/vt9DQ0NcUchKQMDgwshwaxT01DFB9xZgOKwzs11dRg8Yfx43EFqRzlOjf5tpMu45MpGVW77CEkFQN1onfUa2VwSduYk7iBkt3LNuoPxd3hzLiMaDXcWIHe0rNNts/zy7mVraWnhzlI7SnNE+E3wiaO6zxJpdyNxBwGqi5Yd0ujt9RP+B3EHUQJbNm5oQ/+qluGPOwiQv88FzIsrI0NPK10LIqUrQl1d3cSoSGbYArhYCPB4/4gVuSLhcgSHA8v+/Z66unpESDAjdjM8WUhxMin7zIwNq33MzMxwR6kLJStChJCZmZnfrm3s425IUI47C1Ax3FJ2gOvR/b7KdSMAXsbGxpvXr+GcngaPP1EYPf1IW5Zo6eJFuIPUkfIVIUJoxvRpHk5DWSfckVSMOwtQGRIR64T7jAkuHh7uuKMomUULF7TXVaNnwqLBFFX6Ritua/jpIDU1NdxR6kgpixAhdMhvb3c9xLigBIv3AGrQClvQtwV7785tuIMoHzqdHnbqhFbcVvTlHe4sgHjs8EWrVyzr2LEj7iB1p6xFqK6uHn/pQsui6+rJe3BnAdSnEbulVen9y+Hn6HRl/ZHBy9jYeNmiBezzC3AHAQSjZZ9rVvXeZ/lS3EHqRYl/qrW1tdMSY3SvHaFln8OdBVAZ/VqQ/r0z6YkxcINMfaxZuaJR5SvavYu4gwDi8L5oRfoEHzusLEup/YwSFyFCqHnz5hnJ8dqXV9JyonBnAdREux2unbApMyXBwMAAdxblpqmpefq4P/PCUiSowJ0FEIN5eY3HOFdLS0vcQepLuYsQIdS5c+e0xFhO2Dz0KAl3FkA1tAcxDSKXXk1J6NChA+4sVDBgwIAxjvbMmD9wBwFEeHFd61H8rj83485BAKUvQoRQjx49EqMvcoKnoYexuLMA6qDdu8Q5N+dKQkzXrl1xZ6GO/Xt2at67gAru4A4C6kdczQ6dF3DIjxpbr1ChCBFClpaWGcnxOqFzafdg0RlAANrtcO2IRVdTE3v16oU7C6Xo6ekd3Lebc24OPPuk1DSSd/fp3M7V1RV3EGIo2Vqjv/bgwQObocMrHNZJ+0+X60SA2tTSD+uk7r6amti5c2fcWahpwJBhNxtai+3h8SflVPKMvdf2yYO7RkZGuKMQgyJHhN9069bt3s1rhld9NS+tQQopeEA1Mplm7Oam1w9mX02DFpSf08f9NVN8UUk+7iCg9mRS9tmZ2zZtoEwLIooVIUKoTZs2d7Outi9KZ56egcRC3HGAUhEJmCendCpKfXjnZvv27XGnobLWrVvv2LKRc2YmrLumdNRSD5joac6bOwd3ECJRrQgRQk2aNLl7I9OhuYyzzw6Vl+COA5REWTHLd4idIbqRlqyvr487DfXNmzunS1OWetJu3EFAbRQ9YSTuCAs+QbGVJSj1L/M3LS2tCyHBi8Y7sHb2R69v444DSO/FDdbOfqunulwOP8disXCnUQk0Gi0iJFgr7QD8hCoNiYhzZrrvzm3t2rXDHYVglLpZ5nuXL1+eNH0Wf9hqic1cBU8NlINMRk/1Y6XsOX86yMHBAXcalXMuNHTm8g28lTcRA1btITtGxIqB6gWJ0RRcG4jiRYgQevnypeOYse84HXgTDiOmtuIDAPLilzHPzGojLoq7eL5Vq1a406ioydNnXXhSLph2BncQ8EsP4xpHLnzy4C4lLxwQdmpUIpGYmJgQNRqB2rVrd//WDTdTffY2C/QqG3ccQBrPr7G3WUzp0+peVia0IEZHD/oZlj+FXexJ7eNL1tnZ0RFhlGxBRFQR+vn5WVlZ5eeT9GZoLS2twKOHQ/x9dY6P1YzbCjeqqTqJSD3qD52TE8MDDx85sI/BYOAOpNKYTGZK7GV24jaUn4E7C/gRIZcV4Lpz68Y+ffrgjiIvxBShmZnZunXrCBlKfkaOHPnkwb3e5VnsPQPhASbVVfSYvWtA/+oH+Q/vwUVBkmjduvWFs6dYQZPR5wLcWcC/yaSsk56uQ/rN85qNO4ocEXmNkEb76WgCgUBXV3f27B/8p2zduvXMmTOJyvBbMpksMOjk2o2bhYMXi+2WILqybqkMak0mVUs7xIjftnXjummenjQaDXcg8C/HA4PW7jnCX5aBWA1xZwF/0Qxf2rn8XnLMJeU9ccJisdTUfvN7vu6bSJmYmHw7F1rzKm3atOn3X9TX11fkryQajTZj+rQhgwdNmuH13DeO53EUGRgrbHaATdFj9tnZnRprnbqe0bJlS9xpwA/MnD7tcf6zkAA3vncMUlfWX7tUonbloMGr5Jj0FC0tLdxZ6q4m/aK4I0Jcd43+jEwmOxpwbNmqtUJrL/EwH6SuiTsRkA+pWCPFl5Hqt2nd6oUL5lPsQWCKkUqlo8dOSH0n4k8PgbM1eNFuherFrLmbdVUVbiVT3SL85s2bN5Ome+UUfOC6+6OWPXDHAUR7fZsT4tXbpFXwsSMtWrTAnQb8XnV19SAHp7uS5lUe/ghOX+PyME77nFdWRqqKrLir6kX4zang4IVLVwh7u1c5rkcMNu44gAhVlYyoDVoPIo/s2zNhwnjcaUAt8Hi8/oPtn2p3qxrrC12IweMUzinP1PhoCwsL3FEUhMjTRIp5Nl8epkye/OJJ3gjdz+wtPVFeIu44oN4exLI293BpLnj9NA9aUOmw2eyMpLj2pXe0In1wZ1E9T9PZpzwToiJVpwWRKqwsUyvJyclTZs4pb96b77ILaf/g1h5AdmXFzPDFep8fnQ08OnDgQNxpQN2VlZVZ2dq9amoldNkFx4UK8uQK++Tk2MjzqvazAzcO/Iudnd3LJ7lzB7RhbelFvxYImxoqE5mUnnGUudV84dCuLx8/ULWfZOrR1dW9kZZsXHpL6/wi+ElUhEdJ7JOTEy5HqODPDhwR/lhubq771FmvBRq8CUfg+QolUPSYc25Oe121kMCATp064U4DCFNRUWFj7/iE0b7K/QjcRyo/tJwoTti8xOiLlpaWuLNgAEeEP2Zqavrw9o3dCyay9wzUuLgG9vglL4lII2kXx2/optnj7l7PgBakGG1t7Wupib3UiphBk5FEhDsONdFun+eEzk2Ji1LNFkRQhL9Ao9G8Zs968jBngOwpe4clKriDOxH4zsub7K29Bgnv5ufmLF60EJ4RpCQWi5UaF9VPT8gKcEMipTmrpCzUMgMaRq28eTVNpe6O+Q84NVoj58PDZ82dX2XqJHTZBc9XkIJIwIjdwrx99ujBfW5jx+JOA+ROIpFMnDYz+s4LnlckYurgjkMR6om79LOPX7uS1L59e9xZcIJP0DXiNnbsiyd5wxrx2Nt6o5dZuOOovGdX2Zt7jNT58PJJLrSgilBTUzsbdHy8tRnbzx5VfsIdR/nJZJoXVxvlncvJvq7iLYjgiLC2Ll26NG32XIHFxCrH9bAcIgaiKkbUemZO+JkTRx0dHXGnARhs3rZjx5Egnnc80oOlgupKKmGEzm/79X5mcnyjRo1wp8EPjghrZ/To0fl5D2zoL9k7LNG7XNxxVExhDnubxVB28YtHD6AFVda6VT4bFs5m7bVFH1/gzqKcJCJm0OSesoJbV9OgBb+BI8I6OhUc7L1omcBhtcRmLjztK3cymVrKPq2UPccO+sFKMQAhFHz6zJwlK/nzolALU9xZlIpYyAqc2FdfEnsxXKn3lCAWFGHdvXz5cpSbewGtMW/iMcSBD1ZyU/mRfWpqe03epfNnW7dujTsNIIvQ0LDp8xbx515CrXrizqIkhDy2v/PQzs3Onz2lrl73PfioB06N1l27du1ybl6bNagra7slen0bdxyKenGDtd1y/oi+d25kQAuCfxo/flxI0FHW4VHw01cjQi7r8Einnm0unDsNLfgfcERIgOjo6IlTZ/Id1ogHeuHOQiEyGf3KAXbK7vOng4YNG4Y7DSCp2NhYt0nT+HMiURvVfQzu94Rc9iEnF6suQQFH4HHb70EREuPVq1fDRrq8bdS9avxB2OOXAKIq5tnZrXnP4y9dUIV9QUF9xMfHu06cyveOQUbdcGchJZGAdWiUSx/jU8f9a7JduwqCjwbEaNu2bU72NVudCo6fHar4gDuOkisvZu0bMqiJ+M71DGhB8FsODg6njx9hHRqJip/izkI+4mpWwDgH0xYnjx2BFvwZKELCsNns2EsX5joPZu0eiEqe4Y6jtIoes3YOWObhFB0RxmKxcKcBysF5zJgje3ewDjmhsmLcWchEJmOendW/hVbo6SA4I/oLcGqUeCdPBc9dskIwMxS1QKFLZQAAFcVJREFU74c7i7J5eZN9bNxRv90eHu64owDls3Xbjm3HQniLryCmNu4spKB5aW2nT9ey0lOYTCbuLKQGRSgXCQkJrh5TeB4ByGw47ixKg5ZzmR0673L4uUGDBuHOApTV1Flzzt97z58djmiqfgBEyw5plrr14e0sfX193FnIDopQXm7dumU3fGSlm5+spzPuLEqAditU+5JPWmJsjx49cGcBSkwkElnZ2j1oZC0asQ53FqzePmQfHH4zI7Vr1664oygBVf/QJD8WFhZXryTpRixRyz6LOwvZ0a8FNYxefSM9BVoQ1JOGhkZMRFiD7CD0JBV3FnwEFaxjbkFHD0EL1hAUoRyZmZndyEjViV6rlh2COwt50a8FNUzemn01rXPnzrizACpo2rRp2Okg1umZiFuKOwseWuGLXRyGjHV1xR1EaUARypeJicn19JQGUatpt0JxZyEj+o3ghklbbmakwkYwgEBDhgzxnDCWFb4YdxAc7kfrv88+sn8v7hzKBIpQ7kxMTK6nJWtf8qHlXMadhVxot8/rxG24kZ4CLQgIt3v71gbvbqGHcbiDKFY1nx25LPjYETYb9g+vBShCRejcuXNmSgInzBvlJeDOQha0R8kNIpZeSYgxNjbGnQVQEJPJDPI/yI5YhsTVuLMojmbsFsdB1nDfdW1BESqImZlZQlQk+/QM2OAeIYTyM9jBU1MTYrp37447CqAsBwcH867GaplHcQdRlK/vNbJO+e3ejjuH8oEiVBwrK6vL50NYR8eitw9wZ8HqXS4rcGJk6Blzc3PcUQDFHdi9XTNxJ6qqxB1EEVjRGxZ6zzUwMMAdRPlAESrU4MGDTxzezzoyBn0uwJ0Fk48vWYeczpzwt7Ozwx0FUJ+pqan9kMFqGSpwUPjpFT0v3mfZEtw5lBIUoaKNHz9u+4ZV7IPDUeVH3FkUrryYddDRb/vmMaNH444CVMWW9as1r+xH1XzcQeSLmbRzgfdcbW1YW64uoAgxmD9v7sJpHuxDI1XkjM1f+GXsgyNWzZ81Y/o03FGACunSpUs/y760rNO4g8hTeQnKubR00QLcOZQVFCEeWzf94Ta4DztgLBILcWdRCJGA7e88eeSQtat8cEcBKmfDyqXs9ANIJsUdRF40MvzdJ0zQ09PDHURZwVqj2EgkklGu49NKEH/aGYovECwVswLGOXTQCQ8Jhh3RABade/Z50m8l6jYCdxA5qOYz1xo/vHUdnsetM0r//iU3NTW1iNAzZoyvWqGUPqEhk2mdnWOuJz4XHAgtCHBZv2Kxdrof7hRyQcs6Y2VlBS1YH1CEODEYjNS4qA4VuZrRG3FnkRfNi6vb857GRp7X0NDAnQWoLhcXF40vr1FhDu4gRJNJ2RkH169QycXkiANFiBmLxUqNu9zk0QW1tEO4sxBPPXmP4auEjKQ4DoeDOwtQaRoaGquWLuKkUm4FzvsxRvoNrK2tcedQblCE+DVu3DgrPUU/049+4xTuLESiZ53RvXYkMzkeruEDMpg1cwZ6cgV9fIk7CJEapO7avBZuQKsvKEJSaNGiRXpSHCd6HWXWCKbdu6Qds/ZGeoqRkRHuLAAghFCDBg0WzZ/HStyGOwhx8hL1ZNwxY8bgzqH0oAjJolOnTilxUeyzs9Czq7iz1NvTdHaYd2p8dIcOHXBHAeD/LVuyiJ4bj0qe4Q5CBJmME79p15YNdDr8Gq8v+C9IIr179758PoR1fAJ6+xB3lnoouMMKnBh7Mbxnz564owDwLzo6OmtXrWBHrcYdhAC0W2Et2TRX2H2XCFCE5DJ48OBTxw6zDo9U1isZJfksf5fQU8fh6j0gp0UL5nM+5KGnabiD1E81nxW9zt9vNzySRAgoQtJxdXHx/XMj+6AjKivGnaWWvrxlHnA8vHeHk5MT7igA/BiDwQjyP8gO9UaiKtxZ6k4zZvOwQdYDBgzAHYQioAjJaNbMGT7eM9mHRiB+Ge4sNcYtZR903OSzeMrkSbijAPArDg4O1r27acQr7V0zhfcZt84c3rcbdw7qgCIkqXWrV04ZOZhz1EU5PrcKeawjo2eOH71sySLcUQD4vcAjB5hZQehVNu4gtScSsE5OObxvT5MmTXBHoQ5iijAyMrJr1666urrW1tbPnlHijiwSOOC7Z0jXFqyTU8i+WLBUzAr0GNW3894df+KOAkCNGBgYnDp2hH1qqtLtAMO4uHpIn24TJ3rgDkIpBBTh69evPT09AwMDi4uLnZycpk6dWv8xAUKITqefP3OqO5vLIPdipFrhS8z1ZcEnAuC6PVAio0ePHjt8MDtkDu4gtUC7d0k3P/5kwGHcQaiGgCJ89eqVu7u7hYUFk8n09PTMz8+v/5jgGw0NjbiL4S1Kbqqn7MOd5cc0Era3/nQ7NvK8uro67iwA1M6RA/uM+C/VrhzEHaRmPjxnhnrHRp5v2LAh7ihUQ+Q2TBKJxNvbm06nHzr032UzBQKBrq6up6fn9+9q27atl5cXURkoqaSkpJ+t3ZcxvrIeI3Fn+Rfa3Ujdi0tvpKc0a9YMdxYA6uLNmzf9Bw2t9AxGJra4s/ySoJy1s//W5fOmTpmMO4qS4XA4ampqv35NHT/Fm5iYfDvy+7tHk5KSfHx87O3tt2zZ8rN3GRsbf/9FQ0ND2Jfg14yMjC6HnxvqNIbfqBUy6oY7zv+8vsU6Pz8xIbZly5a4owBQR+3bt48MPTNq3ET+0jTUhKw7GUklrJOe4xwHz5oxHXcU5VOTSzYEHBHKZDIfH5+srKwTJ078sOoQbMxLhPALF6bOX85bcR01aIw7C0Llxawd/cICj4wYQcWdToGKORpwbOnm3bylGYijjzvLD2idX9RL8iI9MRYuQMgJAdcIMzMzo6KioqOjDQ0NuVwul8ut/5jge2NdXedNm8g+MQFJRJijiIXsALcVC+ZACwJqmD1r5mx3Z3aAKwmfVlJL9jUozIiJCIMWlB8Cjgg3btz4xx9//PMr348JR4SEkEqldo6jbtA6VDnvwBiDEbrAlvMp7mI43CYKKEMmkzmP80gqrOZPP4toZHnAmnYnXD96VU729RYtWuDOQmVE3izzC1CERPn69Wvn7uYfHLfLeo7GEoB2K9QwdcvjnNva2tpYAgAgJ9XV1bbDRtyltRFOIMd9pPkZnECPa1eSunUjzZ0BFEWWDz6ghho2bBgTeZ4Z6o1K32CY/uML5oWl8ZcuQAsC6tHU1Iy/dKHlx1saCdtxZ0Go8D7rhEfsxXBoQQWAIlQ+vXr1WrdyOeuEu6IvFkrF7FOe2zZtMDU1Vei8ACiKtrb2tdTEJjln6NcCceb49Jp1ZMzJgEOwi4tiwKlRpSSTyQYMGXZL10rkoLid1TSjNvQX56XEXoZLg4Danj9/3rvfwIpxh2TdcNwOVvGBvcdm17rlc7xmY5hdJcERoVKi0WjnTwcx0g+jN/cUNGVhjlZW0NlAWEcNUF+HDh1S4qJYIV7oZZai566qZB8etXDGJGhBRYIiVFaGhoYH9uzkhHghqVjuk4mr2cFTjx7cZ2BgIPe5ACABc3PziJBg1rFxqESBa0ZKROzj411te2/duEFxkwIoQqXm6TnFvENz9dT98p5II2lX746tx48bJ++JACAPe3v7w3t2sA+PQhUfFDGfTKYVMrdvc+YJ//8uUQnkDYpQuZ04vF8zeQ8qLZTjHB9faKYfDj7uL8cpACClKVMmL/WayjkyGgl58p5LI25L28onUeHnfrswJiAcFKFya9u27YrFC9kXV8hvCnbEsnWrfIyMjOQ3BQCktXH92hFWZqzgaXLdFpR2O0zv7pm0hGgWiyW/WcDPwF2jSq+qqqqNSdcSl0Oo0yDiR38YaxS/+uXjB7AwOlBZ1dXV/WztcvWthCM3yWWC17c4/s5ZGaldu3aVy/jgd+CIUOlpaWkd2bebc3E5kkoIHloqZl/0CTiwF1oQqDJNTc34yxG6D87T7lwgfvTyEtax8aHBgdCCGEERUsHo0aM7t2hMu3mG2GHpmce7tm0xbNgwYocFQOk0atQoKfoiK3wRep9H5LgSETvQY/l8L0dHRyKHBbUERUgR+3f9yYzZSOTa+UKeVsI2f789hA0IgDIzMzPz99vLPjYOCQnbYIdxaY1l64Yb1ipuWQzwQ1CEFNGnTx8ri15qGUeJGlDtysHBtgO7d+9O1IAAKLuJEz1G21kzz3gRM1xeQoOHkaHBgbBIBXZQhNSxd9tmRvIeYu7zFlRoXtm/e+tGAoYCgEICDu1v+vUR7VZofQeq+MA6PevS+RB9fTJuBaxqoAipw9TU1HbgALWrx+o/lPr/tXevQVGdBxiAv7MXd4EFly0LLIiUSwSXYEADWnAUcAwNgsxYNQ3xho23hICNU7UhhNEQGTIMSs0k1YkOMZhok5RoU29oBcGqJTFYgQYv0BpT7huQ1RXZS384oxYInL1wDnznfX5xvvOds+/Aj5ez53b2vQVJz0+ZMsX+XQHQxNnZuexQqfyzTUR32579uBzOzFj/cmxsrKOCgT1QhFTJ35YjO73T3jOFfXppxft5b+G8BcAQIiIiNmVluPzpNZv3wFz6VHO36e3cHAemAnugCKkSHh7+i5lRor9/ZM9ORFX75iXEh4SEOCoVAGVy33zD23CbufylLRvf+9Hpz1s+/vCPEyZMcHQusBGKkDbbs7c4ndlp+z2Fxgfys3/Y9sYoPqoGYLyTSCQle95z+mKTDafknY7kpL2weNasWaMRDGyDIqRNTExM8GQf8u0RG7f/+vPwqSHTp093aCgA2syePTsxfo60vMi6zVq+E9eWFeThMrSxBUVIobc2/1ZxptC2bV0rduVued2xeQCotLPgHUnF+6Snlf0mLl9u3ZaTrVKpRi8V2ABFSKHU1FSXPh1prrF6y2tVE8l9PEoGgA1/f/9VK5bLTrM+KGyucWqrz3hlw2iGAlugCCkkFotfz9jgXGX1i5Ocqz7YvDEDt/cCsPTm1t+JLnxMejvYTHY5mZ/7+824RmYMwtsn6KTT6SYFBBu21ROFB9ttelqc345sudXs5uY2mtEAqLJ89dpD3b7GpJFuN2q95rZrXvsP/5HJZJzkAivgiJBOKpUqOTlFdPEg+03E50sWL16CFgSwytZNWROq9hJT//DTZOc+2LBuDVpwbEIRUivrlbUuF/aznW0xyy+UZG5YM5qJACgUFhYWHBRI6k4ON8nYx/zj0Kvr13IVCqyDIqRWbGysm9RCmi6xmt14Tq1UzJgxY5RDAVAo4zcrXL/5dLgZV/46LSLSz8+Pq0RgHRQhzdavXiG/dIDNTOea0tfWrh7tPABUWrJkyYOrp4a5uV5R+9n6lWlcRgKroAhptnL5MvJNGTE+GGFev8H87V9eSnuRk1AAtFEqlRHPziQNZ4ZebezrrzuNV++OZShCmvn5+YVO1ZL6UyPMq/0qMiray8uLk1AAFEpblOzUcGzoddfPB4eGeXp6cpsIrIAipNyaFb92qf18+DmKK1+sWfYCN3kAqJQQHy++fm7IVZJrlQt/OY/jPGAVFCHlfrVokbH22HAvZnpwz9jwt9TUVA5DAdAmLCyMGHpI938Hr3JprpoXN5f7SMAeipByXl5eIdqnSWPFT86oL58W+SwefghgD4ZhnpkeRZq/HrjCbDI0X4mKiuIjFLCFIqTfi4tS5PU/cfaCEOf6r15avJDLPABUmjtrhvj7ywNHWxs9vH3wnIoxDkVIv4UpyeKrx4deZ7FYrp5MSU7mNhEAhSKfmebS/q+Boz/Uh0+bxkccsAKKkH5ardZJwpDWa0Osu/1PlbsyICCA81AAtNFqtZaWgUUoav1uxtOhvOQB9lCEgpD43HymoXzwuKjh9ILE+dznAaBPYGCgofXfxGJ+ctBFdyN0ylN8RQKWUISCkPxcgmtT5eBx15sVz89P4D4PAH3kcrlCqSI//t+Fo6Ku5sDAQL4iAUsSvgMAF+bOnftg3avk3IcDxu9fvzhnzie8RAKgj8/kn3frbhHVpEcjxs7v/f39eYwEbKAIBUGj0axb83KbrpYQYuzvJwwjkUgIIQv27cONEwCO4jfJt+HJWwnNpvvdHd7e3vwlAlZQhEKxq7Dg4Q+9vb0MwygUCn7zANAnYJIP6XiiCHvbFcqfPfynE8YynCMEAHAMf19vSW/74+U77So1HuE7DqAIAQAcw9PTU3av7fHynXY1nrU9HjimCI8fP67VapVKpVarPXVqpHcdAADQSK1WS3o7Hi/fadd4qvmLA2w5oAhNJlNaWtru3bt1Ot327dvT09Pt3ycAwLijVqsZfefj5btdGk8P/uIAWw4oQqPRePDgwYSEhLt378pkMqVSaf8+AQDGHQ8PD1Nv16NFkb7T1xtHhOOAAy5nkslkSUlJer3ezc2NYZjq6uohp5lMppUrVw4eDw4OzszMtD8GsKTX6xmGMZlMfAcBoI1UKr3Xfkv57kyL2cIwTH9v11PL3+3p6eE7l6ApFAqxWDz8HBuLMDQ0tLGxkRBisVgefZhery8uLs7KyqqpqRm8CcMw0dHRg8e9vb2lUqltMcAGD3/b+J0DOJyHh0dlxVlCSHd3t6urq5OTU1hYGN+hhI5hmJHnPGoymzU1Ne3Zs6egoIAQ0tbWFhQUpNfrB8wxGAwqlcpgMNj5WWA/3EcIMNo6Ojrc3d1xB+F44YBzhD4+Pnv37q2qqrJYLIcPH46MjLR/nwAAANxwwD8scrm8rKxs48aNzc3NoaGh+/fvt3+fAAAA3HDAV6Ns4KvRsePIkSNSqTQpKYnvIADUysvLS09P9/X15TsIsIInywjO+fPnL168yHcKAJqVlpZ2dnaOPA/GBhQhAAAIGooQAAAEDUUIAACCxtHFMn19fUFBQQkJCRx8Fgyvrq5OLBZPnTqV7yAA1CovL4+Ojp44cSLfQYDk5eVNnjx5+DkcFSEh5PLly3V1ddx8FgAAACEkJSXF3d19+DncFSEAAMAYhHOEAAAgaChCAAAQNBQhAIBjsHnRAYxBKEIAABA0FCEAAAgailAojh49GhERoVQqNRpNYWEh33EA6JSbm6tWq2NiYm7cuMF3FmALRSgUOTk5y5Yt6+rqOnbsWHZ2Nt9xAOhkNptbWlri4uIyMzP5zgJs4T5CoTCbzTU1NfX19ZWVlQcOHMDfHcDhGIa5efNmYGBgZ2dnUFBQT08P34mAFRwRCsXSpUuLi4vVanV+fj7fWQAoJxKJpFIp3ymALRShUJSXl2dnZycnJ584cYIQYjQa+U4EQKGSkhKj0VhUVBQfH893FmALRSgUO3bsiIuLCw8P7+rqSkxMXLVqFd+JACgklUo1Gk11dXVRURHfWYAtnCMEAABBwxEhAAAIGooQAAAEDUUIAACChiIEAABBQxECAICgoQgBAEDQUIQAACBoKEIAABA0FCEAAAgaihAAAAQNRQgAAIKGIgQAAEFDEQIAgKChCAEAQND+B5DC14LgnvnOAAAAAElFTkSuQmCC"
},
- "execution_count": 45,
+ "execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
@@ -1653,10 +1599,14 @@
}
],
"metadata": {
+ "@webio": {
+ "lastCommId": null,
+ "lastKernelId": null
+ },
"kernelspec": {
- "display_name": "Julia 1.0.3",
+ "display_name": "Julia 1.1.0",
"language": "julia",
- "name": "julia-1.0"
+ "name": "julia-1.1"
},
"language_info": {
"file_extension": ".jl",
diff --git a/README.md b/README.md
index cfd9456..a7b4c51 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,13 @@
# An Introduction to DataFrames
-[Bogumił Kamiński](http://bogumilkaminski.pl/about/), April 30, 2019
+[Bogumił Kamiński](http://bogumilkaminski.pl/about/), July 16, 2019
-**The tutorial is for DataFrames 0.18.1.**
+**The tutorial is for DataFrames 0.19.0.**
A brief introduction to basic usage of [DataFrames](https://github.com/JuliaData/DataFrames.jl).
-Tested under Julia 1.1, CSV 0.4.3, CSVFiles 0.15.0, CategoricalArrays 0.5.2,
-DataFrames 0.18.1, DataFramesMeta 0.4.1, Feather 0.5.1, FileIO 1.0.6, FreqTables 0.3.1,
-PooledArrays 0.5.1, StatsPlots 0.10.2, Tables 0.1.19.
+Tested under Julia 1.1, CSV 0.5.9, CSVFiles 0.15.0, CategoricalArrays 0.5.4,
+DataFrames 0.19.0, DataFramesMeta 0.5.0, Feather 0.5.3, FileIO 1.0.7, FreqTables 0.3.1,
+PooledArrays 0.5.2, StatsPlots 0.11.0, Tables 0.2.9.
Also package BenchmarkTools 0.4.2 is used as a utility.
I will try to keep the material up to date as the packages evolve.
@@ -81,6 +81,7 @@ Changelog:
| 2018-02-08 | Added `groupvars` and `groupindices` functions|
| 2018-04-27 | Updated to DataFrames 0.18.0, dropped JLD2.jl |
| 2018-04-30 | Updated handling of missing values description |
+| 2018-07-16 | Updated to DataFrames 0.19.0 |
# Core functions summary
@@ -88,7 +89,7 @@ Changelog:
2. Getting summary: `size`, `nrow`, `ncol`, `describe`, `names`, `eltypes`, `first`, `last`, `getindex`, `setindex!`, `@view`
3. Handling missing: `missing` (singleton instance of `Missing`), `ismissing`, `Missings.T`, `skipmissing`, `replace`, `replace!`, `coalesce`, `allowmissing`, `disallowmissing`, `allowmissing!`, `completecases`, `dropmissing`, `dropmissing!`, `disallowmissing`, `disallowmissing!`, `passmissing`
4. Loading and saving: `CSV` (package), `CSVFiles` (package), `Serialization` (module), `CSV.read`, `CSV.write`, `save`, `load`, `serialize`, `deserialize`, `Feather.write`, `Feather.read`, `Feather.materialize` (from `Feather`)
-5. Working with columns: `rename`, `rename!`, `names!`, `hcat`, `insertcol!`, `DataFrames.hcat!`, `deletecols`, `deletecols!`, `empty!`, `categorical!`, `DataFrames.index`, `permutedims!`, `haskey`, `select`, `select!`
+5. Working with columns: `rename`, `rename!`, `names!`, `hcat`, `insertcol!`, `DataFrames.hcat!`, `categorical!`, `DataFrames.index`, `permutedims!`, `hasproperty`, `select`, `select!`
6. Working with rows: `sort!`, `sort`, `issorted`, `append!`, `vcat`, `push!`, `view`, `filter`, `filter!`, `deleterows!`, `unique`, `nonunique`, `unique!`, `repeat`, `parent`, `parentindices`
7. Working with categorical: `categorical`, `cut`, `isordered`, `ordered!`, `levels`, `unique`, `levels!`, `droplevels!`, `get`, `recode`, `recode!`
8. Joining: `join`