Published
Edited
Mar 9, 2019
Insert cell
Insert cell
rawData = `(not set)
Member
someemail@email.com
8/23/17
Disabled
Moderated

(not set)
Member
someemail@email.com
10/29/15
No email
Moderated

(not set)
Member
someemail@email.com
2/6/17
Abridged
Moderated`
Insert cell
joinedData = rawData.split("\n")
Insert cell
obData = {
var result = [];
for(var i=0; i<joinedData.length; i+= 7) {
var ob = {
Name: joinedData[i],
Status: joinedData[i+1],
Email: joinedData[i+2],
"Date Joined": joinedData[i+3],
"Email Status": joinedData[i+4],
"Moderation Status": joinedData[i+5]
}
result.push(ob);
}
return result;
}
Insert cell
function toCsv(ob) {
var result = "";
Object.keys(ob).forEach( key => { result += `${ob[key]},` });
return result.substring(0, result.length - 1);
}
Insert cell
final = {
var result = "";
obData.forEach( (ob) => { result += `${toCsv(ob)}\n` })
return result;
}
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more