在下面的python代码中,我可以使用ODBC连接成功地连接到MS Azure SQL Db,并且可以使用熊猫的dataframe方法将数据加载到Azure表中。但是,当我使用pyspark.pandas时,to_sql(...)方法会失败,说明不支持这样的方法。我知道火场上的熊猫API已经达到了97%的覆盖率。但我想知道是否有其他方法可以在仍然使用ODBC的情况下实现相同的目标。
问题:在下面的代码示例中,如何使用pyspark.pandas的ODBC连接连接到Azure并将数据加载到SQL表中?
import sqlalchemy as sq
#import pandas as pd
im
我正在尝试用python将一堆xlsx文件合并成一个单一的pandas数据帧。此外,我还想包含一个列,它列出了每一行的源文件。我的代码如下:
import pandas as pd
from pandas import ExcelWriter
from pandas import ExcelFile
import glob
import os
# get the path for where the xlsx files are
path = os.getcwd()
files = os.listdir(path)
files_xlsx = [f for f in files if f[-4
我有200个不同的文件,我需要把一列一列地连接成一个文件。这200个文件位于一个目录中,所以我尝试了下面的脚本。
path = '/data'
files = os.listdir(path)
files_txt = [os.path.join(path,i) for i in files if i.endswith('tsv')]
## Change it into dataframe
dfs = [pd.DataFrame.from_csv(x, sep='\t')[[6]] for x in files_txt]
##Concate
此脚本的目的是读取csv文件,然后从中创建数据框。
该文件包含外汇历史数据。
该文件有7列Date、Time、Open、High、Low、Close和Volume,大约600k行。
下面是一个数据示例:
Open High Low Close Volume
Release Date
2020-02-05 01:50:00 109.450 109.452 109.449 109.451 79
2020-0
我有多个文件夹和子文件夹,其中包含带有多个选项卡的Excel工作簿。如何将所有信息合并到1个pandas数据帧中?
到目前为止,我的代码如下:
from pathlib import Path
import os
import pandas as pd
import glob
p = Path(r'C:\Users\user1\Downloads\key_folder')
globbed_files = p.glob('**/**/*.xlsx')
df = []
for file in globbed_files:
frame = pd.rea
我尝试基于一个现有的dataframe的列创建多个数据文件。为了保持代码的简单和可伸缩性,我使用了一个循环。这就是我试过的:
import pandas as pd
for index in range(df.shape[1]):
df_index = df.iloc[:, [0, index]]
上面的代码的输出是一个dataframe,它由dataframe的第一列和最后一列组成。所需的输出是多个数据格式,由第一列和单次迭代中的索引组成。
我使用的数据集由85列组成。所需的输出将由85个数据文件组成。
我在创建和填充基于另外两个行值的新列时遇到了一些困难。我创建了一个函数,该函数(在一个大型CSV文件(1GB)中)查找源代码和目的地邮政编码,并返回specif行。
我希望生成距离和时间,并将其作为新列添加到orders文件中。
我尝试过使用orders.apply(),而不是得到这个错误
File "pandas\_libs\index.pyx", line 88, in pandas._libs.index.IndexEngine.get_value
File "pandas\_libs\index.pyx", line 128, in pandas
我用python编写了以下代码,以便将多个csv文件读取到独立dfs中的pandas中:
dfs = []
for f in filenames:
df = pd.read_csv(f, encoding= 'unicode_escape')
dfs.append(df)
它工作得很好,我可以索引我创建的dfs对象来访问不同的数据帧,如下所示:
dfs[0], dfs[1], etc
但是,数据帧中包含NaN值,我正在尝试编写第二个循环,该循环将遍历并删除它们。我确信这会起作用,然而,它没有:
for df in dfs:
df.dropna()
手机运行了
我正在为一些ML构建一个熊猫数据帧。X Dataframe有一个由我的各种数据文件中的所有现有日期组成的日期索引: all_index=set()
for table in data:
for date in table.index.values:
all_index.add(date) 然后,我构建我的数据变量,我想在其中合并我拥有的每个数据: temp2= np.empty((len(all_index),1,))
temp2[:]=np.nan
X=pd.DataFrame(temp2, all_index) 当然,现在我想用数据填充它(数据是1df,稍后将是D
我有两个数据帧,它们具有相同的列名和数据类型,如下所示:
A object
B category
C category
每个数据帧中的类别并不相同。
当正常连接时,pandas输出:
A object
B object
C object
这是根据的预期行为。
但是,我希望保持分类,并希望联合类别,因此我尝试了跨数据帧中的列的union_categoricals,这两列都是分类的。cdf和df是我的两个数据帧。
for column in df:
我有大约300个CSV格式的数据。我想用Python把它们转换成二维数组。每个CSV文件都有一列,其中包含大约150,000个条目。CSV的头部是标签。转换为数组后,数组的第一行应该是第一个CSV文件,数组的第二行应该是第二个CSV文件,依此类推。最后,我想要有一个300行150,000列的数组。第一列应包含标签。我希望你能帮助我解决这个问题。
非常感谢。
到目前为止,我已经编写了遍历包含csv文件的文件夹的代码
def CSV_File_Loop(Path_Fil):
files = [join(Path_File,f) for f in listdir(Path_file) if
我正在使用这个python脚本在我的文件夹的子目录中获取具有特定名称的csv文件,并将它们读入dataframe,我一直试图将它们的目录路径作为另一列添加到dataframe中,但是我经常遇到错误。
import pandas as pd
import glob
import os
path = 'main/directory/path'
file_extension = '.csv'
csv_file_list = []
for root, dirs, files in os.walk(path):
for name in files:
我有各种包含数据的文件。我希望从每个文件中提取一个特定的列,并创建一个包含所有提取数据的列的新的dataframe。
例如,我有3个文件:
A B C
1 2 3
4 5 6
A B C
7 8 9
8 7 6
A B C
5 4 3
2 1 0
新的dataframe应该只包含来自C列的值:
C
3
6
9
6
3
0
因此,第一个文件的列应该复制到新的dataframe,来自第二个文件的列应该是新dataframe的附录。
到目前为止,我的代码如下所示:
import pandas as pd
import glob
for filename in glob.glob('