Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
Laboratorio 4 - 2020 - 2do cuatrimestre
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Christian Schmiegelow
Laboratorio 4 - 2020 - 2do cuatrimestre
Commits
bf136e40
Commit
bf136e40
authored
Sep 02, 2020
by
Christian Schmiegelow
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Upload New File
parent
073615f0
Pipeline
#42
canceled with stages
Changes
1
Pipelines
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
91 additions
and
0 deletions
+91
-0
dataSaver.py
clase0/python/dataSaver.py
+91
-0
No files found.
clase0/python/dataSaver.py
0 → 100644
View file @
bf136e40
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Mon Aug 24 18:29:47 2020
@author: labo4_2020
"""
import
numpy
as
np
import
random
"""
Para trabajar con tiras de números, la librería por excelencia es numpy. Se la suele importar
con la abreviatura np.
Para este ejemplo usaremos la librería random, que genera números pseudoaleatorios entre 0 y 1,
para simular una medición a guardar.
"""
#%% Simulamos una medición
TiemposMedidos
=
np
.
linspace
(
0
,
10
,
100
)
#crea un vector de 0 a 10, con 100 puntos equiespaciados.
VoltajesMedidos
=
[]
#creo una lista vacía
#agrego a la lista vacia anterior un numero pseudoaleatorio hasta que la longitud sea igual al vector de tiempos creado antes
i
=
0
while
i
<
len
(
TiemposMedidos
):
VoltajesMedidos
.
append
(
random
.
random
())
i
=
i
+
1
#linea importante si se usa un while. no olvidarla
"""
La función np.savetxt guarda datos .csv o .txt, con o sin headers (encabezado). El formato se especifica en el nombre del archivo.
Como antes, verificar que el path (la ruta) donde se están ejecutando los scripts coincida con la carpeta
donde se quiere guardar el archivo.
Para guardar los archivos como columnas, hay que construir una lista cuyos elementos son los arrays a guardar,
y trasponerla, como se muestra en el ejemplo 2 (recomendado). Sino, se guardan como filas.
Especificar el delimiter (puede ser un espacio, una coma, una tabulación u otros).
Para poner header, el ejemplo 2 muestra cómo. La variable comments es un caracter que precede a los headers.
Si no se especifica, es un # y el header se guarda como comentario. Si se especifica como el ejemplo,
el header no tiene un caracter precedente.
"""
#%% Ejemplo 1: Guardar los dos vectores como dos filas, delimitados por un espacio
np
.
savetxt
(
'mediciones/medicion1.txt'
,
[
TiemposMedidos
,
VoltajesMedidos
],
delimiter
=
' '
)
#%% Ejemplo 2: Guardar como dos columnas de datos con headers, delimitadas por una coma.
np
.
savetxt
(
'medicion2.txt'
,
np
.
transpose
([
TiemposMedidos
,
VoltajesMedidos
]),
delimiter
=
','
,
header
=
'Tiempo,Voltaje'
,
comments
=
''
)
#%% Ejemplo 3: guardado de sucesivas mediciones
TiemposMedidos
=
np
.
linspace
(
0
,
10
,
100
)
N
=
7
#número de mediciones
i
=
0
while
i
<
N
:
MedicionSimulada
=
[]
j
=
0
while
j
<
len
(
TiemposMedidos
):
MedicionSimulada
.
append
(
random
.
random
())
j
=
j
+
1
np
.
savetxt
(
'simulacion'
+
str
(
i
)
+
'.txt'
,
np
.
transpose
([
TiemposMedidos
,
MedicionSimulada
]),
delimiter
=
','
)
i
=
i
+
1
print
(
i
)
#línea útil para monitorear los archivos que se van guardando. usen prints para saber lo que pasa en su código en tiempo real!
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment