У меня есть CSV входной строки
string_in="country,100,color"
Может кто-нибудь пожалуйста, предложить мне, как добавить этот вход (string_in) к уже существующим
DataTable визуализации с помощью IronPython сценария в Spotfire ,
Спасибо.Spotfire IronPython: Добавление новой строки в DataTable
ответ
Вы захотите вытащить несколько различных функций, чтобы снять это с помощью скриптов. У меня есть мой сценарий ниже, но в целом то, что вы хотите сделать, это настроить свой вход в качестве источника данных, а затем добавить строки из этого источника данных в ваш существующий. Я одолжил хорошую сумму от this учебника пятнистого пятна от TIBCO и изменил его по мере необходимости, чтобы получить нас, где вы хотите быть. В результате может быть несколько избыточных вложений, которые вы можете удалить.
Я использую datTab в качестве входного параметра для скрипта в качестве таблицы данных, к которой мы хотим добавить наши строки.
from Spotfire.Dxp.Data import AddRowsSettings
import System
from System import DateTime
from System.IO import StringReader, StreamReader, StreamWriter, MemoryStream, SeekOrigin
from Spotfire.Dxp.Data import DataType, DataTableSaveSettings
from Spotfire.Dxp.Data.Import import TextFileDataSource, TextDataReaderSettings
#First we need to create your data with some columns.
#Here I have a comma separated miniature table built up with
#a commented option for your variable itself. \r\n used for newline
textData = "name,values,category\r\ncountry,100,color\r\n"
#textData = "col1,col2,col3\r\n" + string_in + "\r\n"
#Memory Stream stuff. Simply just writing our variable
#into a place we can access to make a data source
stream = MemoryStream()
writer = StreamWriter(stream)
writer.Write(textData)
writer.Flush()
stream.Seek(0, SeekOrigin.Begin)
#you need settings to tell the system what stuff you're importing.
#here we define it is comma separated and what data types our columns are.
readerSettings = TextDataReaderSettings()
readerSettings.Separator = ","
readerSettings.AddColumnNameRow(0)
readerSettings.SetDataType(0, DataType.String)
readerSettings.SetDataType(1, DataType.Integer)
readerSettings.SetDataType(2, DataType.String)
textDataSource = TextFileDataSource(stream,readerSettings)
#We create some settings here automatically having the system match
#column names for us between the data table and our data source.
settings = AddRowsSettings(datTab,textDataSource)
#And finally we add the rows from our datasource with our settings.
datTab.AddRows(textDataSource,settings)
Вы, конечно, можете сделать это более сложным с более входным переменным циклом через вещи, чтобы добавить несколько строк, и т.д. Вы можете также следовать этому же процессу с URL в файл вместо потока памяти материал. Зависит от ваших типов ввода.
Дайте мне знать, если возникнут какие-либо вопросы. Я попытался прокомментировать важные детали, но при необходимости можно было бы дополнительно разъяснить конкретные функции.
Edit: Смотрите мой скриншот ниже после того как я добавил рекорд пару разное время
- 1. Как преобразовать DataTable в JSON в spotfire с помощью IronPython?
- 2. Добавление новой строки в конец datatable
- 3. Добавление новой строки в DataSet DataTable
- 4. Spotfire SaveAs using ironPython
- 5. HTML в Spotfire и IronPython
- 6. DataTable соединение в Spotfire
- 7. Spotfire IronPython Loop через свойства
- 8. Добавление строки в DataTable
- 9. Запустите макрос VBA в Spotfire, используя Ironpython
- 10. Добавление новой строки в DataTable после AJAX загрузки файлов
- 11. Сценарий Spotfire IronPython: получить данные Cross Table
- 12. Сценарий Spotfire IronPython: удалить таблицу данных
- 13. jtable (добавление новой строки)
- 14. Добавление строки в DataTable вопрос
- 15. Как я могу ссылаться на spcific datatable в IronPython в Spotfire?
- 16. Добавление новой строки в UITableView
- 17. Добавление новой строки в сетку
- 18. Добавление новой строки в таблицу
- 19. Добавление новой строки в UITextView
- 20. Добавление новой строки в строку
- 21. Добавление новой строки в JTable
- 22. Добавление новой строки в JQuery
- 23. Добавление новой строки в панды?
- 24. Добавление новой строки в NSCharacterSet
- 25. Добавление новой строки в SlickGrid
- 26. Добавление новой строки в R
- 27. Добавление новой строки в iTextSharp
- 28. Добавление новой строки в css
- 29. Добавление новой строки в список
- 30. Добавление ссылки System.Data.SQLite в IronPython
Спасибо @ clesiemo3. Это было очень полезно. – dhvlnyk
У меня есть datatable ** ALLDataTable **, в котором несколько строк ** помечены **. Я пытаюсь скопировать выбранные строки в другой тип данных под названием ** Subset **. Логикой, которую я использую, является копирование отмеченных строк в файл ** temp.txt **, а затем импортирование в «Subset» datatable. Ошибка выполнения во время выполнения, но когда я просматриваю вновь созданный файл подмножества, существует сообщение msg «Выбранная таблица данных не содержит столбцов». Можете ли вы любезно помочь мне разобраться в этом. Код здесь - http://ideone.com/fork/PTUAo7 – dhvlnyk
@ diablo8226. Вам может быть лучше задавать новый вопрос для этого, а не комментарий к этому. Это, с первого взгляда, может быть не сохранено в файле, поскольку вы просто пишете его, но не закрываете его. Я знаю, что в моем примере выше я использую MemoryStream(), а не временный файл в вашем, но я думаю, что они будут концептуально одинаковыми. Я бы попробовал эквивалент txt файла flush + seek to 0, если он есть. Я не знаю, с головы до ног. Любая причина для файла tmp по потоку памяти? – clesiemo3