import numpy as np
def split(seq, num_chunks):
lst = np.array_split(np.array(seq), num_chunks)
return [x.tolist() for x in lst if len(x)]
from __future__ import division
import math
def split(seq, num_chunks):
assert num_chunks
pos = 0
sz = len(seq)
result = []
while pos < sz:
num_items = int(math.ceil((sz - pos) / num_chunks))
result.append(seq[pos:pos + num_items])
pos = pos + num_items
num_chunks -= 1
return result
split([1, 2, 3, 4, 5, 6, 7, 8, 9], X)
# X
# 1 [[1, 2, 3, 4, 5, 6, 7, 8, 9]]
# 2 [[1, 2, 3, 4, 5], [6, 7, 8, 9]]
# 3 [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 4 [[1, 2, 3], [4, 5], [6, 7], [8, 9]]
# 5 [[1, 2], [3, 4], [5, 6], [7, 8], [9]]
# 6 [[1, 2], [3, 4], [5, 6], [7], [8], [9]]
# 7 [[1, 2], [3, 4], [5], [6], [7], [8], [9]]
# 8 [[1, 2], [3], [4], [5], [6], [7], [8], [9]]
# 9 [[1], [2], [3], [4], [5], [6], [7], [8], [9]]
# 10 [[1], [2], [3], [4], [5], [6], [7], [8], [9]]
def split(seq, num_chunks):
assert num_chunks
pos = 0
sz = len(seq)
while pos < sz:
num_items = int(math.ceil((sz - pos) / num_chunks))
yield seq[pos:pos + num_items]
pos = pos + num_items
num_chunks -= 1
for _ in range(num_chunks):
yield []
list(split([1, 2, 3, 4, 5, 6, 7, 8, 9], X))
# X
# ...
# 9 [[1], [2], [3], [4], [5], [6], [7], [8], [9]]
# 10 [[1], [2], [3], [4], [5], [6], [7], [8], [9], []]
# 11 [[1], [2], [3], [4], [5], [6], [7], [8], [9], [], []]
import pandas as pd
import numpy as np
def get_df(filename, parse_dates=None):
"""Build :class:`DataFrame` list from CSV file.
Expected CSV file format::
Timestamp0; Value0 ; Timestamp1; Value1; ...TimestampN; ValueN;
Args:
filename: CSV filename.
parse_dates: List of columns with dates.
Returns:
List of DataFrames with 'Timestamp' as index and 'Value' as value
column.
Notes:
:attr:`DataFrame._name` contains name extracted
from 'TimestampX' column.
"""
df_all = pd.read_csv(filename, sep=';', decimal=',',
parse_dates=parse_dates, header=0)
assert len(df_all.columns) % 2 == 0
lst = []
columns = ['time', 'value']
# Create lsit of 2-items chunks.
col_list = np.split(df_all.columns, len(df_all.columns) / 2)
for cols in col_list:
df = df_all[cols] # split 2-column DataFrame.
df._name = cols[0].split(',')[0] # attach name to data frame.
df.columns = columns # change columns names.
df = df.set_index('time') # set index to timestamps.
lst.append(df)
return lst
df_list = get_df('GAS.csv', parse_dates=[0, 2, 4])
df = df_list[0]
print(df.index)
print(df._name)
...
git deliver
.2. Какую дату акцепта ставить в оферте Upwork
3. Нужно ли указывать платежные реквизиты (транзитный р/с) ИП в оферте и в Confirmation of Services?
Можно ли как-то прекратить действие оферты c тем, чтобы принять ее вновь или как-то переакцептировать без закрытия аккаунта? При возможности переакцепта получается новый договор, соответственно, всегда можно избежать оформления паспорта сделки в будущем.
5. Если принять оферту еще будучи физлицом, а далее работать по ней как ИП - есть ли юридическое противоречие
1. Если на Upwork висит пара к$ и часть из них получена еще до регистрации ИП (т.е. будучи в статусе физлица), то как их все приземлить на р/с свежезарегистрированного ИП на УСН 6%/патенте?
Если придерживаться мнения, что средства, висящие на Upwork - это фантики,
Upwork - иностранная организация, не состоящая на учете в РФ.
Таким образом, вы - принципал для организации, не состоящей на учете в РФ (посреднические услуги в электронной форме), поэтому
- в день перечисления агентом (Upwork) денег клиентов (за вычетом комиссии), необходимо заплатить НДС (18% от суммы услуг агента);
- в течение 5 дней с момента перевода денег составить счет-фактуру в разделе Документы, где
- тип операции "Оплата услуг иностранных фирм, не состоящих на учете в России";
- сумма : комиссия Upwork + 18% (это налоговая база);
- НДС: НДС включен = 18/118*(комиссия + 18%) (это сумма НДС к уплате);
- по итогам квартала до 25 числа сдать декларацию НДС, в Эльбе появится задача по формированию декларации.
Перечислять НДС налоговый агент (вы) обязан в момент произведения расчетов с нерезидентом (upwork), но поскольку в Эльбе пока нет возможности сформировать платежное поручение по НДС вне задачи, которая открывается только по итогам квартала. То такое платежное поручение необходимо формировать в интернет-банке, либо его можно подготовить на сайте налоговой https://service.nalog.ru/payment/payment.html
To address your concern, your funds availability date is listed on the 1st column of your transactions history.
УСН учитываем полную сумму оплат клиентов, без вычета комиссии. Доход нужно учитывать по отчёту (реестру) агента, то есть учитывать его нужно именно на дату оплаты клиента, пока деньги ещё даже находятся на виртуальном счете. В Эльбе в момент поступления денежных средств на виртуальный счёт нужно создавать Поступления "по прочему" и учитывать эту сумму в налогах. При выводе денежных средств на расчетный счет повторно данную сумму в налогах УСН учитывать не нужно.