Loading...
yana_neykova avatar yana_neykova 3 Точки

Python - file data processing

Здравейте, опитвам се да обработя един файл, който е със около 200 000 реда, 15 колони , csv file. Информацията е за 

Данните в него имат следната повтаряемост:

  • в колона 2 се съдържа вид цвете, като всеки 10 реда са с еднакви стойности - 1-10 ред е лале, 11-20 ред  - роза, и т.н.
  • в колона 3 се съдържа уникален код за това цвете, със същата повтаряемост - 1-10 ред кода е един и същ, 11-20 ред отново се повтаря и т.н.
  • в колона 6 се съдържа инфомация за номера на фактурата, с която цветето/букета е закупен. Номерата може да са последователни.

Задачата е да се напише програма , която да може автоматично да попълва номерата по описаната логика.

Първо си прочетох файла с pd.read_csv , и после започнах с  for-loop, но там запецнах и не успявам да го оправя.....Някой има ли идея как мое да стане?

Благодаря предварително!

0
Python
BoYaN avatar BoYaN 336 Точки

Здрасти,
би ли споделила кода, който си писала да видим докъде точно си го докарала да върви и какво се чупи.
Иначе четеш ред по ред, всеки ред го сплитваш по запетая и си взимаш/слагаш стойностите на определите позиции.
 

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

доколкото я разбирам тя има dataset и реално трябва да си направи 3 проверки и зависимост от вида на цветето да слага нещата в колоната 

 for loop тук ще ти минава през всеки ред на датасета през всяка колона  и колоните ще и почват от 1 до n става тегаво.

по-скоро бих го направил с нещо от сорта на 

df(това е сета с цветята)[df['flower']==лале - примерно,' unique code']=xx

 нещо такова прави си няколко if-a или просто го copy paste някоко пъти с различните условия и толкова.

общо взето какво се случва pandas автоматично ще смени в 3та колона на подадената стойност хх там където цветето отговаря на определения тип примерно лале и ще го направи на всички позиций дали с 5 10 100 няма значение, има начин и с iloc  и slices но там става малко пипкаво. Поне аз доколото разбрах ползва Jupiter notebook pd.csv.read е  синтаксис на pandas библиотеката. Но  може и да бъркам ако даде малко повече инфо ще стане по добре .

Като за фактурите може да се направи по същия начин,аз бих си направил един метод да взема уникалните имена/видове/код или там каквото ми определя цветята и после в един foreach или for цикъл за всеки индикатор  ще сменям тея стойности наведнъж в bulk звучи ми най-смислено и бързо.

0
13/08/2018 11:59:58
yana_neykova avatar yana_neykova 3 Точки

Мерси за идеит! Утре ще споделя кода, който съм писала, като си стигна до компютъра .

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.