Apfelinsel
Mac-Software => Thema gestartet von: Jochen am April 27, 2009, 17:06:28
-
Wie ermittelt man einfach den Pfad einer Datei ohne Terminal ?
Ich las, dass man unter 10.4 die Datei ins Spotlight Fenter ziehen konnte und dann den bereits aktivierten Pfadnamen erhielt.
War das so ?
Geht das irgendwie auch unter 10.5 ?
Jochen
-
In allen Versionen von Mac OS X kann man eine Datei vom Finder in einen beliebigen "Textverarbeitungsbereich", also zum Beispiel in ein offenes Terminal- oder TextEdit-Fenster ziehen. Man erhält dann an der Schreibposition den absoluten Pfad.
(Das Programm des Zielfensters darf den Ziehvorgang allerdings nicht weiter interpretieren, z.B. indem es dann direkt einen Import der herübergezogenen Datei auslöst. Deshalb ist das Terminal-Programm das bevorzugte Zielprogramm.)
Was ist denn ein "bereits aktivierter" Pfadname?
-
Die paar mal wo ichs gebraucht habe, hat Pathsnagger durchaus auf meinem Intel funktioniert.
http://www.apfelinsel.de/forum/index.php/topic,958.0.html
-
In allen Versionen von Mac OS X kann man eine Datei vom Finder in einen beliebigen "Textverarbeitungsbereich", also zum Beispiel in ein offenes Terminal- oder TextEdit-Fenster ziehen. Man erhält dann an der Schreibposition den absoluten Pfad.
(Das Programm des Zielfensters darf den Ziehvorgang allerdings nicht weiter interpretieren, z.B. indem es dann direkt einen Import der herübergezogenen Datei auslöst. Deshalb ist das Terminal-Programm das bevorzugte Zielprogramm.)
Was ist denn ein "bereits aktivierter" Pfadname?
Dann mache ich was falsch
Weder mit fn-/ ctrl-/alt-/Apfel-Taste bekomme ich den Pfad, wenn ich die Datei ins offene TextEdit Fenster ziehe.
Bereits aktivierter Pfadname soll heissen dass er schon hinterlegt ist und ich direkt den Pfad kopieren kann.
Mittelerweise fand ich,. dass man im Finder Dienste Devonagent Suchen nutzen kann.
Dann öffnet sich DA und der Browser zeigt den aktivierten Pfad.
Jochen
-
Ich sehe gerade, dass ich 2006 da schon mal gefragt hatte.
Bei meiner ersten Suche hier nach Pfad bin ich nicht weit genug in die Vergangenheit gegangen.
Jochen
-
Weder mit fn-/ ctrl-/alt-/Apfel-Taste bekomme ich den Pfad, wenn ich die Datei ins offene TextEdit Fenster ziehe.
Man muss keinerlei Tasten festhalten. Wenn es nicht geht, hast Du zufällig eine Datei gewählt, die TextEdit "interpretieren und/oder importieren" kann.
Bereits aktivierter Pfadname soll heissen dass er schon hinterlegt ist und ich direkt den Pfad kopieren kann.
Äh, wie? ???
-
:D
Was willst Du denn eigentlich mit dem Pfad bzw. wo soll er letztlich hin?
-
:D
Was willst Du denn eigentlich mit dem Pfad bzw. wo soll er letztlich hin?
Der Pfad muss in Mathematica um Daten zu importieren.
Beim ausprobieren geht das ja momentan noch händisch.
Jochen
-
Weder mit fn-/ ctrl-/alt-/Apfel-Taste bekomme ich den Pfad, wenn ich die Datei ins offene TextEdit Fenster ziehe.
Man muss keinerlei Tasten festhalten. Wenn es nicht geht, hast Du zufällig eine Datei gewählt, die TextEdit "interpretieren und/oder importieren" kann.
Hatte ich vorher auch ohne zusätzliche Tasten ausprobiert.
Das ist übel, da ich xls, rtf oder png in TextEdit gezogen hatte.
Messdaten liegen ja als Zahlen z.B. in Excel oder in einer Textdatei vor.
Pfad wird halt nicht angezeigt.
Jochen
-
Äh, wie? ???
Der Pfadname sollte schon aktiviert angezeigt werden damit ich direkt kopieren kann.
Jochen
-
Und dass Du das ganz einfach auf direktem Weg erledigst und die Datei an den entsprechenden Ort in Mathematica ziehst, geht nicht?
-
Und dass Du das ganz einfach auf direktem Weg erledigst und die Datei an den entsprechenden Ort in Mathematica ziehst, geht nicht?
Habe ich probiert. Im Mathematica Notebook wird dann das Dateisymbol angezeigt.
Will mal noch was anders probieren.
Jochen
-
Habe jetzt mal die Excel Datei in die Formel Import [" "] gezogen.
Klappt, allerdings werden da noch so `eingefügt.
Die sind im Original nicht drin ???
Jochen
-
Klappt,
In die Formel sollte aber eben der Pfad, oder? Dein Screenshot sieht ja so aus, als würde so direkt der Inhalt der Datei in die Formel eingelesen. Und so wie ich Dich bis jetzt verstanden habe, ist das nicht, was Du brauchst, oder?
-
Klappt,
In die Formel sollte aber eben der Pfad, oder? Dein Screenshot sieht ja so aus, als würde so direkt der Inhalt der Datei in die Formel eingelesen. Und so wie ich Dich bis jetzt verstanden habe, ist das nicht, was Du brauchst, oder?
Stimmt, jetzt habe ich nur noch mal den Filenamen.xls reingeschrieben. Und jetzt sind auch kein " ` " Zeichen mehr drin.
Langsam werde ich warm mit Mathematica ;D
Jochen
-
Na, klappt doch so halbwegs...
Nach zehnmaligem Lesen habe ich jetzt auch verstanden, dass Du mit "Aktivieren" wohl "Markieren des Textes für eine anschließende Kopieroperation in die Zwischenablage" gemeint hast. Aber warum erst in die Zwischenablage, wenn man den Pfad doch direkt in der richtigen Stelle haben kann?
Klappt, allerdings werden da noch so `eingefügt.
Mathematica versucht grundsätzlich, numerische (und damit ungenaue) Ausdrücke zu vermeiden.
In diesem Fall hat Mathematica mitgedacht und "weiß", dass Excel Zahlen mit einer bestimmten, endlichen Genauigkeit verrechnet, die durch den verwendeten Prozessor und das laufende Betriebssystem bestimmt ist.
Wird in Mathematica einer Zahl ein `-Zeichen nachgestellt, bedeutet das "diese Zahl ist als Gleitkommazahl in Maschinenengenauigkeit zu interpretieren". Also genau das, was in der Excel-Datei drinsteckt. Wenn Du mit Excel beispielsweise den Wert von 1/3 berechnest, dann steht in Excel so etwas wie 0.333333333333. Das ist im Sinne von Mathematica jedoch als textuelle Beschreibung zu unpräzise, da damit entweder
0.33333333333000000000000000000000 ... oder
0.33333333333333333333 ...
gemeint sein könnte. Excel "meint" den letzteren Wert, ihm sind nur nach der zwölften Nachkommastelle die Ziffern ausgegangen.
Zurück zum eigentlichen Problem: Wie warlord schon sagt, hat Mathematica die Import-Operation jetzt bereits durchgeführt. Den Import-Befehl und die Pfadangabe kannst Du dir also sparen. Du könntest den Dateiinhalt z.B. als mehrdimensionale Matrix direkt einer Variablen zuweisen und damit weiterarbeiten.
-
Na, klappt doch so halbwegs...
Nach zehnmaligem Lesen habe ich jetzt auch verstanden, dass Du mit "Aktivieren" wohl "Markieren des Textes für eine anschließende Kopieroperation in die Zwischenablage" gemeint hast. Aber warum erst in die Zwischenablage, wenn man den Pfad doch direkt in der richtigen Stelle haben kann?
Das wusste ich zum Zeitpunkt meiner ersten Frage ja noch nicht ;D
Jochen
-
@mbs
Deine Antwort bezüglich " `" ist zu überdenken.
Beim direkten Import der Datei kommen ja keine, also wenn ich innerhalb der Funktion Import [" "] den Pfad mit Dateinamen schreibe oder auch nur den Dateinamen.
Beim Import kommen sie aber, wenn ich das Excel Icon in die Klammer ziehe.
Jochen
-
Beim direkten Import der Datei kommen ja keine
Woher willst Du das wissen? Wie lässt Du Mathematica die importierten Daten zur Kontrolle wieder ausgeben?
-
Beim direkten Import der Datei kommen ja keine
Woher willst Du das wissen? Wie lässt Du Mathematica die importierten Daten zur Kontrolle wieder ausgeben?
Import mittels direkter Eingabe
-
Import mittels Einfügen des Excel Icons
Sehe aber gerade, dass da noch der Befehl In(16) steht, Nach Shift+Return kommt Fehlermeldung.
Mit Drag & Drop ist dann wohl nichts ;-(
Jochen
-
Import mittels direkter Eingabe
Du lässt Dir nach dem Import die Daten ausgeben, indem Du noch einen Import durchführst? ???
Nach Shift+Return kommt Fehlermeldung.
Ist ja auch falsch. Wie warlord schon erwähnt hat, erwartet der Befehl "Import" die Angabe eines Dateinamens, bzw. Pfades. Das steht ja auch (auf Englisch) in der Fehlermeldung: "Das erste Argument der Funktion ist kein gültiger Dateiname, Ordner oder URL."
Wie ich schon geschrieben hatte, importiert Mathematica die Daten durch die Zieh-Operation sofort. Du brauchst also den Befehl "Import" an der Stelle gar nicht. Die Daten werden nach dem Ziehen des XLS-Icons eingelesen, ausgewertet und dann so in das Notebook als Text eingefügt, als ob Du sie von Hand eingetippt hättest.
Sehe aber gerade, dass da noch der Befehl In(16) steht
Das kannst Du als eine Art Komfort-Funktion des Mathematica-Notebooks sehen. Das Ergebnis Deines eingetippten Befehls wird gleichzeitig noch der Variablen "In(16)" zugewiesen. Wenn Du also 200 Zeilen später nochmal das Zwischenergebnis brauchst, das Du in der 16. Zeile der Eingabe bereits verwendet hattest, brauchst Du es noch nicht nochmal einzutippen, sondern kannst einfach die Variable In(16) einfügen.
-
Ich hoffe die Missverständnisse nehmen nicht zu ;D
Import mittels direkter Eingabe
Du lässt Dir nach dem Import die Daten ausgeben, indem Du noch einen Import durchführst? ???
Der Normalfall ist doch dass ich Import ["Dateiname.xls"] schreibe.
Dann führe ich shift+Return aus.
Dann kommt In(...) und dann Out(...) mit den Daten.
Ganz zu Beginn klappte das nicht, da ich den Dateinamen OHNE xls eingab.
Dann erhielt ich den Hinweis, dass ich den Pfad mit angeben müsste.
Dann kam ich oder WIR darauf, dass der Import nicht klappte wegen fehlendem .xls.
Jetzt ist aber doch alles in Butter.
Zweite Erläuterung werde ich verinnerlichen ;D
Jochen
-
Wie ich schon geschrieben hatte, importiert Mathematica die Daten durch die Zieh-Operation sofort. Du brauchst also den Befehl "Import" an der Stelle gar nicht. Die Daten werden nach dem Ziehen des XLS-Icons eingelesen, ausgewertet und dann so in das Notebook als Text eingefügt, als ob Du sie von Hand eingetippt hättest.
Stimmt, allerdings mit dem " `".
Da habe ich noch nicht geprüft ob ich dann diese Zahlen nutzen kann um einen Graph zu plotten.
Jochen
-
Der Normalfall ist doch dass ich Import ["Dateiname.xls"] schreibe.
Dann führe ich shift+Return aus.
Dann kommt In(...) und dann Out(...) mit den Daten.
Ja, OK. Du beziehst Dich darauf, dass innerhalb des "Out" die importierten Daten ohne ` geschrieben wurden? Das ist bei der Ausgabe im Sinne von Mathematica zulässig, denn Ausgaben werden mit einer vom Benutzer einstellbaren Rechengenauigkeit dargestellt. Wäre das nicht so, würde die Ausgabe des numerischen Wertes von "ein Drittel" unendlich lange dauern. So viel Zeit hat keiner ... ;)
Um nochmal die `-Schreibweise zu erläutern:
Mathematica ist ein Mathematik-Programm für Profis, muss es also mit Zahlen sehr, sehr genau nehmen.
Deine erste Zahl in der Excel-Tabelle lautet "0". Jedenfalls schreibt Excel das so. Mathematica "weiß" aber, dass Excel ein Programm ist, das nur mit einer bestimmten Zahl von Stellen hinter dem Komma rechnet. Mathematica ist dagegen ein Programm, das mit beliebig vielen Stellen hinter dem Komma rechnet.
Wenn Excel also "0" sagt, könnte damit der Wert "0" gemeint sein. Es könnten aber auch die Werte
0.0000000000001 oder
0.00000000000000000001 oder
0.0000000000000999999 oder
0.0000000000000912345
oder unendlich (!) viele andere Zahlenwerte, die in der Nähe von 0 liegen, gemeint sein. Excel kann unterhalb einer gewissen Schwelle die Werte nicht mehr voneinander unterscheiden, da es nur mit einer beschränkten Genauigkeit rechnet.
Wenn Mathematica aber innerhalb eines Befehls "0" gesagt bekommt, ist damit "genau 0" gemeint.
Wenn also die Excel-Daten importiert werden, wäre es falsch, wenn Mathematica die Excel-0 als Mathematica-0 bei der Eingabe gelesen hätte: Excel könnte ja auch den Wert 0.0000000000001 gemeint haben, den es selbst aber gar nicht darstellen kann.
Mathematica kennzeichnet den Wert deshalb als 0`. Diese 0` heißt "ein Wert in der Nähe von 0, mit einer Rundungsungenauigkeit, die durch die auf diesem Computer übliche Prozessor- und Betriebssystemgenauigkeit für Gleitkommaberechnungen gegeben ist".
-
Mathematica ist ein Mathematik-Programm für Profis, muss es also mit Zahlen sehr, sehr genau nehmen.
Das lasse ich jetzt mal so im Raume stehen ;D
Die anderen Erklärungen sind verständlich.
Jochen