WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Spalte in Array mit konstanten Wert fuellen

 

tiny_Tina

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.09.2010, 20:51     Titel: Spalte in Array mit konstanten Wert fuellen
  Antworten mit Zitat      
Hallo zusammen,

ich sitze nun schon lange Zeit an einem scheinbar trivalen Problem. Hab erst mit Matlab angefangen ...deswegen reicht es wahrscheinl noch nicht fuer den Weitblick ... also tut mir leid...fuer das was jetzt kommt Very Happy

also ich habe

Code:

N=name(1:5) % nur die ersten 5Zeichen der Datei
 

-> diese werden als char gespeichert

NUN moechte ich mit diesen WERT die erste Spalte eines Arrays ueber 1025 Zeilen automatisch fuellem lassen.

Ich wollte es damit versuchen:

Code:

%  vorbelegen des neuen Arrys
z= cell(1025,1)

% füllen mit konstanten wert N
 z(1:1025)={'N'}
 


das Prinzip funktioniert zwar, aber er schreibt da ueberall "N" in die Zellen.
Weiss nicht, wie ich das aendern kann.

Wuerde mich freuen, wenn ich gaaaaaaaaaaaanz schnell hilfe bekomm.
DANKE DANKE DANKE


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 29.09.2010, 22:56     Titel: Re: Spalte in Array mit konstanten Wert fuellen
  Antworten mit Zitat      
Hallo tiny_Tina,

Code:

N = name(1:5);
z = cell(1025,1)
z(1:1025)={N};
 


'N' ist ein CHAR array aus dem Buchstaben N.
N ist dagegen die Variable selbst.

Lies am besten die "Getting Started"-Sektion aus der Dokumenatation. Die ist genau für Matlab-Anfänger erstellt worde.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
tiny_Tina

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.09.2010, 23:01     Titel:
  Antworten mit Zitat      
Mmmhh, ich dachte mir kann da jmd fix ne Antwort drauf geben... die ih die fuellen kann die Spalte ...
Ja ich weiss, so wie ich da gerade stehen habe wir die Spalte mit "N" gefuellt...

DAS ist ja mein Problem Sad

Dachte hier zu fragen, ist schnelle als getting startet zu lesen... denn das macro rings rum hab ich ja auch schon fast fertig Smile

Also, ich hoffe auf euch.
Bye.
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 29.09.2010, 23:57     Titel:
  Antworten mit Zitat      
Hallo,

1. Das Lesen des Getting Started ist schon sehr hifreich, da du dann dein triviales Problem auch selber lösen könntest. Stell dir einmal vor jeder würde in diesem Forum nur Fragen über die Grundlagen von Matlab stellen, wieviele redundante Threads es geben würden und der Informationsgehalt (besonders für Fortgeschrittene User) wäre doch sehr gering. Nimm dies bitte nicht persönlich, aber in letzter Zeit nimmt die Anzahl von Beiträgen mit wirklich grundlegenden Fragen, die man mit ein wenig Selbststudium schnell selber lösen könnte, wirklich zu.

2. Du hasst doch die Antwort (+ eine Erklärung) bekommen, also nicht gleich beschweren, sondern wenigstens den Code mal ausprobieren bzw. genau anschauen!
Zitat:

Code:

N = name(1:5);
z = cell(1025,1)
z(1:1025)={N};  % in deinem Code stand hier {'N'} anstatt von {N}, wodurch du jeder Zelle das Zeichen bzw. den Buchstaben N zuweist!
 



MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 30.09.2010, 00:11     Titel:
  Antworten mit Zitat      
Hallo tiny_Tina,

Zitat:
Mmmhh, ich dachte mir kann da jmd fix ne Antwort drauf geben... die ih die fuellen kann die Spalte ...
Ja ich weiss, so wie ich da gerade stehen habe wir die Spalte mit "N" gefuellt...

Und ich hatte Dir gezeigt, wie man die Spalte des Cell-Arrays mit {N} füllt. Hast Du die Lösung übersehen? Bist Du mit der Lösung in irgendeiner Art nicht zufrieden? Dann wäre es praktisch, wenn Du den Unterschied zwischen der von mir angegebenen Lösung und Deinen Erwartungen erklärst.

Dieses Forum ist kein guter Ersatz für das Lesen der "Getting-Started"-Docs. Hier werden Fragen oft, schnell und mit Enthusiasmus beantwortet, wenn die Leser sehen, dass der Fragende sich selbst Mühe gegeben hat sein Problem selbst zu lösen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
tiny_Tina

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.09.2010, 06:50     Titel:
  Antworten mit Zitat      
Hey,

erst mal DANKE DANKE!

Vor lauter Programmierung den ganzen Tag hab ich schon gar nicht mehr durchgesehen.

Ich hatte die Änderung voellig uebersehen. Sorry.

Kann ich verstehen, dass man da gleich etwas genervt ist. uuuups...

Egtl ging es den ganzen Tag ganz gut ...aber ich hab mich an dem trivialen Problem sooo lange aufgehalten, dass ich dachte, dass das Forum mir hilft - hat es ja auch ... morgen dann wieder aufs Neue.

Hab wirkl schon viele gute und hilfreiche Beitraege hier gefunden.
Suuupi.

Also danke soweit ... ich probier mich dann mal weiter!
Gute Nacht.
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 30.09.2010, 22:12     Titel:
  Antworten mit Zitat      
Hallo tiny_Tina,

Um 6:50 sagst Du "Gute Nacht"? Alle Achtung. Das nenn ich fleissiges Programmieren.

Ich zumindest war nicht genervt. Der Ratschlag, die Getting-Started-Abschnitte zu lesen, war ganz ernst gemeint. Solche Probleme selbst lösen zu können ist viel hilfreicher, als sich bei jeder Schwierigkeit Hilfe aus einem Forum holen zu müssen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
tiny_Tina

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.10.2010, 16:42     Titel:
  Antworten mit Zitat      
You are right! Ich hatte aber schon ueberall gelesen und gesucht ...war irgendwie komisch... vlt hab ich es auch einfach ueberlesen.

Naja, die Uhrzeit ist komisch lustig Smile
Ich bin iM in Kanada und da ist das dann alles etwas anders Smile

Danke nochmal...
 
tiny_Tina

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.10.2010, 16:52     Titel: need help again
  Antworten mit Zitat      
Hallo liebes Team nochmal,

getting started/help und google haben mir mal wieder nicht geholfen ... zu lange dauert das suchen, ihr seid mit sicherheit wieder schneller.

Also ein Problem und zwei Loesungsansaetze oder so.

Also ich lese aus einem Ordner die Dateinamen in ein cell ein:
names = {liste.name};

Das bloede ist, dass es in dem Ordern nicht sichtbare Subdirectories gibt mit dem namen "." & ".."
Die will ich aber nicht mit auflisten.

Also ich dachte, dass es irgendwie eienn Befehl gibt, sudirectories zu ignorieren ODER

mit einer FORschleife, dass CELL nach "." und ".." zu durchsuchen und dann die komplette Spalte zu loeschen ...

ABER die Suche nach einem PUNKT oder 2 PUNKTEN klappt gar nicht.

So wollte ich das machen - bitte nicht die Haende ueber den Kopf zusammenschlagen - aber das Problem dauert mit einem Tag schon zu lange an Sad

Code:

d=.
e=..
i=1
for i=1:numel(names)
    if names{i}=d
    elseif names{i}=e
        X(:,i)=[]
        i++
    else
        i++
    end
end
 


Waere sooooo toll, wen ihr mir noch mal helfen koenntet! DANKE
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 05.10.2010, 18:35     Titel:
  Antworten mit Zitat      
Hallo

Dazu kann man z.B SETDIFF verwenden, so mache ich bei mir zumindest

Code:


% als
liste     = dir(pwd);
names = {liste([liste.isdir]).name};

names=  setdiff(names,{'.','..'})
 
Private Nachricht senden Benutzer-Profile anzeigen
 
tiny_Tina

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.10.2010, 18:50     Titel:
  Antworten mit Zitat      
Thank you sooooo much!
Great!!

Oftmals sind es nur die Befehle dir mir fehlen, da ich Matlab noch nicht so oft nutze.

Rolling Eyes

Thanks a lot again.
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.