Loading data files: Difference between revisions

From SweepMe! Wiki
Jump to navigation Jump to search
Line 5: Line 5:
== Python ==
== Python ==


The data files can easily be loaded using the numpy package:
The data files can easily be loaded using the package [http://www.numpy.org/ numpy]:


{{syntaxhighlight|lang=python|code=
{{syntaxhighlight|lang=python|code=
Line 32: Line 32:




Another opportunity is to use the python package [https://pandas.pydata.org/ pandas]:
Another opportunity is to use the package [https://pandas.pydata.org/ pandas]:
{{syntaxhighlight|lang=python|code=
{{syntaxhighlight|lang=python|code=
import pandas as pd
import pandas as pd

Revision as of 11:30, 19 September 2018

Origin

Just drag and drop the saved data files into Origin and select standard Ascii-import. Long name, unit and comment are automatically filled with the three header lines. Make sure that the decimal separator is set to point in the options of Origin.

Python

The data files can easily be loaded using the package numpy:

import numpy as np  # loading numpy package

data =  np.genfromtxt("mydata.txt", usecols = (0,2,3), skip_header = 4, missing_values = "--", filling_values = float("nan"))
# this example loads data from the first, the third, and the fourth column, it skips the header and replaces missing values by nan (= "not a number")
# Load all columns be removing the usecols argument

Please find all options here: https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.genfromtxt.html

A faster import can be realized by using the numpy function loadtxt. However, you have to make sure that all characters are numbers and can be converted to floats.

import numpy as np  # loading numpy package

data =  np.loadtxt("mydata.txt", usecols = (1,4,5), skiprows=4, delimiter="\t")
# this example loads data from the second, the fifth, and the sixth column and skips the header
# Load all columns be removing the usecols argument

Please find all options here: https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.loadtxt.html


Another opportunity is to use the package pandas:

import pandas as pd

file = "Name of my data file.txt"
data = pd.read_csv('%s' % file, header=[0,1,2], delimiter='\t')
# the first three lines of the header are read

V = data[('Voltage', '[V]', 'SMU1')]
I = data[('Current', '[A]', 'SMU2')] 
# Syntax: data[('<variable>', '<unit>', '<module label>')]

QtiPlot

tbf

Gnuplot

tbf