2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу 1, 2  След.
 
 [Mathematica] Строки и числа
Сообщение18.07.2013, 21:09 
Есть две переменные которые выглядит вот так:

x={{"155410"}, {"152000"}, {"152000"}, {"152000"}, {"152000"}, {"151000"}, {"149820"}, {"149820"}, {"149000"}, {"148000"}}

y= {{"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}}

Почему когда я пытаюсь посчитать,

z=x-y

получаю не результат вычислений, а это:

{{-"0" + "155410"}, {-"0" + "152000"}, {-"0" + "152000"}, {-"0" + "152000"}, {-"0" + "152000"}, {-"0" + "151000"}, {-"0" + "149820"}, {-"0" + "149820"}, {-"0" + "149000"}, {-"0" + "148000"}}

и для z даже гистограмма в таком ее виде не читается...

Помогите исправить ?
Спасибо.

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 21:42 
Аватара пользователя
Dmitry.spb в сообщении #747246 писал(а):
Есть две переменные которые выглядит вот так:
x={{"155410"}, {"152000"}, {"152000"}, {"152000"}, {"152000"}, {"151000"}, {"149820"}, {"149820"}, {"149000"}, {"148000"}}

Уберите кавычки. Закавыченное число уже не число, а строка.

 
 
 
 Re: Незначительная проблемка в Mathematica
Сообщение18.07.2013, 21:44 
У вас вместо чисел (1234) — строки ("1234"). Зачем кавычки?

 
 
 
 Re: Незначительная проблемка в Mathematica
Сообщение18.07.2013, 21:45 
arseniiv в сообщении #747260 писал(а):
У вас вместо чисел (1234) — строки ("1234"). Зачем кавычки?


Кавычки появляются при копи-пасте из Математики сюда на форум, в Математике ковычек нет !

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 21:48 
Чтобы не раскрывать кавычки вручную, можно использовать ToExpression.

 
 
 
 Re: Незначительная проблемка в Mathematica
Сообщение18.07.2013, 21:54 
Их не видно. Есть или нет можно проверить с помощью FullForm.

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 21:54 
Vince Diesel в сообщении #747265 писал(а):
Чтобы не раскрывать кавычки вручную, можно использовать ToExpression.


Визуально помогло это spread = ToExpression[ToString[spread1]]

Теперь другой глюк - гружу данны из базы, ВО ВСЕХ ДРУГИХ программа все ОК, в Математике в данных появляются артефакты {"148000"}, {"148000"}, {"148000"}, {"147880"}, <<9953>>, {"131770"}, \
{"131770"}, {"131770"} - вот ЭТО в треугольных скобках ! Откуда берутся хз. Везде кроме Математики все ок, проверял 10 раз. Из-за <<9953>> данные не отображаются функцией Plot !

Не знает что это за квадратные скобки ?

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 22:02 
Во-первых, зачем делать тогда ToString? Это обратное к ToExpression. А <<9953>> означает, что при выводе на экран не печатаются еще 9953 элемента из середины списка. Короткая форма вывода, Short.

 
 
 
 Re: Незначительная проблемка в Mathematica
Сообщение18.07.2013, 22:03 
Dmitry.spb, может быть, в источнике, откуда вы получали эти штуки (если не сами так странно набрали) числа пропускались через ToString — эта функция превращает выражения в числа. Есть обратная функция ToExpression — она прочитает строку, скажем, "28", и выдаст число 28. Если у вас много таких «неправильных» чисел, используйте эту функция для автоматизации исправления.

-- Пт июл 19, 2013 01:04:20 --

Ой. В соседней теме это уже было сказано.

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 22:13 
Vince Diesel в сообщении #747275 писал(а):
Во-первых, зачем делать тогда ToString? Это обратное к ToExpression. А <<9953>> означает, что при выводе на экран не печатаются еще 9953 элемента из середины списка. Короткая форма вывода, Short.



Тогда что означает эти 3 числа в треугольных ковычках ?

Цитата:
QuantilePlot::ldata: {{{{155410},{152000},{152000},{152000},{152000},{151000},{149820},{149820},{149000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{148000},{147880},{147880},{147770},{147450},{147450},{147450},{147450},{146980},{146980},{146980},{146980},{146710},{145890},{144570},{144570},{144570},{144570},{144570},{144570},{144570},{144570},{143940},{143940},{143940},{142800},{142800},{142800},<<950>>}},<<49>>,<<950>>} is not a valid dataset, distribution, or a valid list of datasets and distributions. >>

 
 
 
 Re: Незначительная проблемка в Mathematica
Сообщение18.07.2013, 22:19 
arseniiv в сообщении #747277 писал(а):
Dmitry.spb, может быть, в источнике, откуда вы получали эти штуки (если не сами так странно набрали) числа пропускались через ToString — эта функция превращает выражения в числа. Есть обратная функция ToExpression — она прочитает строку, скажем, "28", и выдаст число 28. Если у вас много таких «неправильных» чисел, используйте эту функция для автоматизации исправления.

-- Пт июл 19, 2013 01:04:20 --

Ой. В соседней теме это уже было сказано.


Ответили следующее:

Цитата:
А <<9953>> означает, что при выводе на экран не печатаются еще 9953 элемента из середины списка. Короткая форма вывода, Short.


Спасибо, продолжу вопросы в этой ветке post747295.html#p747295

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 22:21 
Именно это и означает, что я выше не писал. Сообщение об ошибке обрезало массив, иначе он на много страниц мог растянуться. А команда не работает, поскольку массив не имеет нужный вид. Какой надо, можно посмотреть в хелпе. Тут массив четырехмерный. Мб, тут часть нужна? А если весь, преобразовывать размерность можно с помощью команды Flatten.

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 22:27 
Вот этот код:

x = SQLSelect[conn, {"stdata"}, {SQLColumn["x"]}, None,
SortingColumns -> None, Distinct -> False, MaxRows -> 100,
Timeout -> 30, ShowColumnHeadings -> False, GetAsStrings -> True]

y = SQLSelect[conn, {"stdata"}, {SQLColumn["x"]}, None,
SortingColumns -> None, Distinct -> False, MaxRows -> 100,
Timeout -> 30, ShowColumnHeadings -> False, GetAsStrings -> True]

x1 = ToString[x]
y1 = ToString[y]

sp = ToString[x1 - y1]
QuantilePlot[sp, sp]


Не работает, данные в базе в фомате INT !

Выдача кода по порядку:

Цитата:
{{"155410"}, {"152000"}, {"152000"}, {"152000"}, {"152000"}, \
{"151000"}, {"149820"}, {"149820"}, {"149000"}, {"148000"}, \
{"148000"}, {"148000"}, {"148000"}, {"148000"}, {"148000"}, \
{"148000"}, {"148000"}, {"148000"}, {"148000"}, {"148000"}, \
{"148000"}, {"148000"}, {"148000"}, {"147880"}, {"147880"}, \
{"147770"}, {"147450"}, {"147450"}, {"147450"}, {"147450"}, \
{"146980"}, {"146980"}, {"146980"}, {"146980"}, {"146710"}, \
{"145890"}, {"144570"}, {"144570"}, {"144570"}, {"144570"}, \
{"144570"}, {"144570"}, {"144570"}, {"144570"}, {"143940"}, \
{"143940"}, {"143940"}, {"142800"}, {"142800"}, {"142800"}, \
{"142800"}, {"142800"}, {"142000"}, {"142000"}, {"142000"}, \
{"141990"}, {"141990"}, {"141990"}, {"141990"}, {"141990"}, \
{"141210"}, {"141210"}, {"141210"}, {"141210"}, {"141210"}, \
{"141210"}, {"141210"}, {"141210"}, {"141210"}, {"141210"}, \
{"141210"}, {"141210"}, {"141210"}, {"141210"}, {"141140"}, \
{"141140"}, {"141140"}, {"141000"}, {"140370"}, {"140370"}, \
{"140000"}, {"139400"}, {"139400"}, {"139400"}, {"139400"}, \
{"139400"}, {"139250"}, {"139250"}, {"139250"}, {"139250"}, \
{"139000"}, {"139000"}, {"139000"}, {"138810"}, {"138810"}, \
{"138500"}, {"138500"}, {"137990"}, {"137990"}, {"137990"}}


Цитата:
{{"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, {"0"}, \
{"0"}, {"127000"}, {"127000"}, {"127000"}, {"127000"}, {"128000"}, \
{"128000"}, {"128670"}, {"128680"}, {"129000"}, {"130000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}, \
{"131000"}, {"131000"}, {"131000"}, {"131000"}, {"131000"}}


Цитата:
{{155410}, {152000}, {152000}, {152000}, {152000}, {151000}, \
{149820}, {149820}, {149000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {147880}, {147880}, {147770}, {147450}, \
{147450}, {147450}, {147450}, {146980}, {146980}, {146980}, {146980}, \
{146710}, {145890}, {144570}, {144570}, {144570}, {144570}, {144570}, \
{144570}, {144570}, {144570}, {143940}, {143940}, {143940}, {142800}, \
{142800}, {142800}, {142800}, {142800}, {142000}, {142000}, {142000}, \
{141990}, {141990}, {141990}, {141990}, {141990}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141140}, {141140}, \
{141140}, {141000}, {140370}, {140370}, {140000}, {139400}, {139400}, \
{139400}, {139400}, {139400}, {139250}, {139250}, {139250}, {139250}, \
{139000}, {139000}, {139000}, {138810}, {138810}, {138500}, {138500}, \
{137990}, {137990}, {137990}}


Цитата:
{{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {127000}, \
{127000}, {127000}, {127000}, {128000}, {128000}, {128670}, {128680}, \
{129000}, {130000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}}


Цитата:
-{{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {127000}, \
{127000}, {127000}, {127000}, {128000}, {128000}, {128670}, {128680}, \
{129000}, {130000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}} + {{155410}, \
{152000}, {152000}, {152000}, {152000}, {151000}, {149820}, {149820}, \
{149000}, {148000}, {148000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {147880}, {147880}, {147770}, {147450}, {147450}, {147450}, \
{147450}, {146980}, {146980}, {146980}, {146980}, {146710}, {145890}, \
{144570}, {144570}, {144570}, {144570}, {144570}, {144570}, {144570}, \
{144570}, {143940}, {143940}, {143940}, {142800}, {142800}, {142800}, \
{142800}, {142800}, {142000}, {142000}, {142000}, {141990}, {141990}, \
{141990}, {141990}, {141990}, {141210}, {141210}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141140}, {141140}, {141140}, {141000}, \
{140370}, {140370}, {140000}, {139400}, {139400}, {139400}, {139400}, \
{139400}, {139250}, {139250}, {139250}, {139250}, {139000}, {139000}, \
{139000}, {138810}, {138810}, {138500}, {138500}, {137990}, {137990}, \
{137990}}
QuantilePlot::ntdist: -- Message text not found -- (-{{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {127000}, {127000}, {127000}, {127000}, {128000}, {128000}, {128670}, {128680}, {129000}, {130000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {13\[Ellipsis] 210}, {141140}, {141140}, {141140}, {141000}, {140370}, {140370}, {140000}, {139400}, {139400}, {139400}, {139400}, {139400}, {139250}, {139250}, {139250}, {139250}, {139000}, {139000}, {139000}, {138810}, {138810}, {138500}, {138500}, {137990}, {137990}, {137990}}) >>

QuantilePlot::ldata: -{{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {127000}, {127000}, {127000}, {127000}, {128000}, {128000}, {128670}, {128680}, {129000}, {130000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {13\[Ellipsis] 210}, {141140}, {141140}, {141140}, {141000}, {140370}, {140370}, {140000}, {139400}, {139400}, {139400}, {139400}, {139400}, {139250}, {139250}, {139250}, {139250}, {139000}, {139000}, {139000}, {138810}, {138810}, {138500}, {138500}, {137990}, {137990}, {137990}} is not a valid dataset, distribution, or a valid list of datasets and distributions. >>




Цитата:
QuantilePlot["-{{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, \
{127000}, {127000}, {127000}, {127000}, {128000}, {128000}, {128670}, \
{128680}, {129000}, {130000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}} + \
{{155410}, {152000}, {152000}, {152000}, {152000}, {151000}, \
{149820}, {149820}, {149000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {147880}, {147880}, {147770}, {147450}, \
{147450}, {147450}, {147450}, {146980}, {146980}, {146980}, {146980}, \
{146710}, {145890}, {144570}, {144570}, {144570}, {144570}, {144570}, \
{144570}, {144570}, {144570}, {143940}, {143940}, {143940}, {142800}, \
{142800}, {142800}, {142800}, {142800}, {142000}, {142000}, {142000}, \
{141990}, {141990}, {141990}, {141990}, {141990}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141140}, {141140}, \
{141140}, {141000}, {140370}, {140370}, {140000}, {139400}, {139400}, \
{139400}, {139400}, {139400}, {139250}, {139250}, {139250}, {139250}, \
{139000}, {139000}, {139000}, {138810}, {138810}, {138500}, {138500}, \
{137990}, {137990}, {137990}}", "-{{0}, {0}, {0}, {0}, {0}, {0}, {0}, \
{0}, {0}, {0}, {127000}, {127000}, {127000}, {127000}, {128000}, \
{128000}, {128670}, {128680}, {129000}, {130000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}, {131000}, {131000}, {131000}, {131000}, {131000}, {131000}, \
{131000}} + {{155410}, {1
52000}, {152000}, {152000}, {152000}, \
{151000}, {149820}, {149820}, {149000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {148000}, {148000}, {148000}, {148000}, \
{148000}, {148000}, {148000}, {148000}, {147880}, {147880}, {147770}, \
{147450}, {147450}, {147450}, {147450}, {146980}, {146980}, {146980}, \
{146980}, {146710}, {145890}, {144570}, {144570}, {144570}, {144570}, \
{144570}, {144570}, {144570}, {144570}, {143940}, {143940}, {143940}, \
{142800}, {142800}, {142800}, {142800}, {142800}, {142000}, {142000}, \
{142000}, {141990}, {141990}, {141990}, {141990}, {141990}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141210}, {141210}, \
{141210}, {141210}, {141210}, {141210}, {141210}, {141210}, {141140}, \
{141140}, {141140}, {141000}, {140370}, {140370}, {140000}, {139400}, \
{139400}, {139400}, {139400}, {139400}, {139250}, {139250}, {139250}, \
{139250}, {139000}, {139000}, {139000}, {138810}, {138810}, {138500}, \
{138500}, {137990}, {137990}, {137990}}"]

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 22:35 
Зачем, если данные нужны числовые, делать GetAsStrings -> True и ToString?

 
 
 
 Re: Пакет Mathematica, помогите посчитать/разобраться.
Сообщение18.07.2013, 22:40 
Vince Diesel в сообщении #747292 писал(а):
Зачем, если данные нужны числовые, делать GetAsStrings -> True и ToString?


Ок, данные если ToString->false грузятся из базы без ковычек. Но понимает ли Математика что эти данные числовые ?

Но почему все равно не отображается график ?

Обратите внимание что там в выдаче (крайней) по функции плот откудато ПЛЮС (строка выделена жирным).

Спасибо.

 
 
 [ Сообщений: 18 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group