Skip to content

Releases: javascriptdata/danfojs

[LATEST] Release Node (v0.3.2), Browser (0.3.2)

02 Oct 14:28
Compare
Choose a tag to compare

Minor patch update for column name display after aggregation functions like sum, mean, var, are applied to a column axis.

New Release for Danfojs Node(v0.3.1) and Browser (0.3.1)

01 Oct 22:50
Compare
Choose a tag to compare

New Features

  • Ability to create empty frames
  • Flag for toggling between low/high memory mode
  • Inplace support for all mutating operations
  • Ability to set Configuration values on frame creation
  • Support boolean mask for subsetting with iloc and loc. E.g df.iloc({rows: df["count"].gt(5), columns: [0, 1]})
  • Update an existing column value via subsetting. E.g df["count"] = [1,3,4,5]
  • Add loc indexing support for Series
  • Add configuration support for formating DataFrame display in the console
  • New DataFrame applyMap function for element-wise apply function
  • and and or logical comparison support. E.g
df.loc({
      rows: df['Salary_in_1000'].gte(100)).and(df['Age'].gt(60))
})
  • read_csv now uses Papaparse and supports config values for headers, separator, etc.
  • to_csv , to_json and to_excel functions now support saving to local disk in Node and downloadable in the browser. Also, supports config parameters for output.
  • read_json now supports config values for headers, authentication, separator, etc.
  • read_excel now uses XLSX parser, hence supports all XLSX config options.
  • DataFrame query function now accepts boolean masks with single or multiple conditions. E.g
df.query({
  rows: df['Salary_in_1000'].gte(100)).and(df['Age'].gt(60)) 
})

Bug Fixes

  • Column data not being updated when mutating internal data array
  • Str class error for non-string type
  • Better error message
  • Fix support for all JS Date format
  • Fix loc slicing bug for row index with string labels
  • DataFrame apply function now works only across a specified axis

Contributors

@risenW

New Release for Danfojs Node(v0.2.7) and Browser (0.2.6)

30 May 14:37
fb797a6
Compare
Choose a tag to compare

New Release for Node(v0.2.6) and Browser (0.2.5)

29 Mar 16:16
Compare
Choose a tag to compare

[Bug Fix]: #150 #152
[Patch] #159 , #158
[Feature] #154 New Groupby feature: Perform groupby operation on grouped columns directly:

group = df.groupby(['A"])
group.min()


groupby.apply((x) => x.add(2))
groupby.col(["C"]).apply((x) => x.min())

Contributors: @steveoni @PrawiraGenestonlia @woosuk288 @risenW

New Release for browser and node env

06 Mar 09:47
8b34ce9
Compare
Choose a tag to compare

We added/updated the following features:

  • Fix error thrown when danfojs CDN is placed in an HTML header
  • Smaller bundle size for browser: From ~1.7mb to about ~550kb
  • Stopped bundling Danfojs with Plotly. This means that as of v0.2.3, we no longer ship with Plotly distribution due to the huge size. Plotly * plots are still supported, but in order to make them, you have to explicitly add the Plotly CDN or package.

A simple example:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://cdn.plot.ly/plotly-1.2.0.min.js"></script> 
    <script src="https://cdn.jsdelivr.net/npm/danfojs@0.2.3/lib/bundle.min.js"></script> 

    <title>Document</title>
</head>

<body>

    <div id="div1"></div>
    <div id="div2"></div>
    <div id="div3"></div>

    <script>

        dfd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/finance-charts-apple.csv")
            .then(df => {

                df['AAPL.Open'].plot("div1").box() //makes a box plot

                df.plot("div2").table() //display csv as table

                new_df = df.set_index({ key: "Date" }) //resets the index to Date column
                new_df.plot("div3").line({ columns: ["AAPL.Open", "AAPL.High"] })  //makes a timeseries plot

            }).catch(err => {
                console.log(err);
            })

    </script>
    
</body>

</html>

Latest Release for browser environment

14 Feb 17:25
3f6d547
Compare
Choose a tag to compare
  • Fix browser tag issue and returns back to specific versioning instead of @latest
  • This release fixes some runtime issue regarding @babel/runtime
  • Smaller size in this version. From ~8mb to about ~5mb
  • Release now ships with exported version of tensorflowjs (2.8.5). This fixes the double dependency issue when building ML models, as you no longer need to install/import tensorflowjs separately.

To use tensoflowjs, you can reference it from danfo as shown below:

const tf = dfd.tf //contains a reference to the tensorflowjs-node library

 const model = tf.sequential();
 model.add(tf.layers.dense({ inputShape: [7], units: 124, activation: 'relu', kernelInitializer: 'leCunNormal' }));
 model.add(tf.layers.dense({ units: 64, activation: 'relu' }));
 model.summary();

New Danfojs-Node Release

14 Feb 15:48
Compare
Choose a tag to compare
  • This release fixes some runtime issue regarding @babel/runtime
  • Release comes with exported version of tensorflowjs-node (2.8.5). This fixes the double dependency issue when building ML models, as you no longer need to install/import tensorflowjs separately.

To use tensoflowjs-node, you can reference it from danfo as shown below:

const dfd = require("danfojs-node")
const tf = dfd.tf //contains a reference to the tensorflowjs-node library

 const model = tf.sequential();
 model.add(tf.layers.dense({ inputShape: [7], units: 124, activation: 'relu', kernelInitializer: 'leCunNormal' }));
 model.add(tf.layers.dense({ units: 64, activation: 'relu' }));
 model.summary();

Build for Node-based environments (v0.1.3-beta)

15 Aug 14:55
Compare
Choose a tag to compare

This is a patch release for node-based environments. We added/updated the following features:

  • Ability to create DataFrame/Series from Tensors
  • Add iloc function for Series
  • Update addColumns function to accept Series
  • Add inplace option for fillna
  • Fix bug in rename function of DataFrame
  • Add Inplace option for query
  • Fixed upper bound bug in indexing

v0.1.0-browser-beta

15 Aug 14:23
Compare
Choose a tag to compare

This is a minor release for browser-based environments.
We added/updated the following features:

  • Ability to create DataFrame/Series from Tensors
  • Add iloc function for Series
  • Update addColumns function to accept Series
  • Add inplace option for fillna
  • Fix bug in rename function of DataFrame
  • Add Inplace option for query
  • Fixed upper bound bug in indexing

Optimized build for Node Environment

12 Aug 09:17
Compare
Choose a tag to compare
v0.1.2-beta

Merge branch 'master' of https://github.com/opensource9ja/danfojs