• 1403/07/13

مشکل ارور : شیء 'DataFrame' هیچ ویژگی 'append' ندارد :

سلام استاد خسته نباشید.بنده در قسمت 48 دوره با مشکل زیر رو به رو میشم 

متن کدی که نوشتم:

from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
from pandas import DataFrame
import numpy as np
import io
import os

def readFiles(path): # برای واکشی آیتم ها یک فایل
    for root, dirnames, filenames in os.walk(path): 
        for filename in filenames:
            path = os.path.join(root, filename)
            
            in_body = False
            lines = []
            f = io.open(path, 'r', encoding='latin1')
            for line in f:
                if in_body:
                    lines.append(line)
                elif line == '\n':
                    in_body = True
                    
            f.close()
            message = '\n'.join(lines)
            yield path, message

def DataFrameFromDirectory(path, classification):
    rows = []
    index = []
    
    for file_name, message in readFiles(path):
        rows.append({'message':message, 'class':classification})
        index.append(file_name)
        
    return DataFrame(rows, index = index)

# class => spam / not_spam
# message => متن پیام ها یا ایمیل ها
data = DataFrame({'message':[], 'class':[]})
data = data.append(DataFrameFromDirectory('C:/MLcours/emails/spam','spam'))
data = data.append(DataFrameFromDirectory('C:/MLcours/emails/not_spam','not_spam'))

data.head()

و اروری که باهاش به مشکل خوردم و نمیدونم چطور باید درستش کنم :

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_7068\3589405517.py in ?()
---> 39 from sklearn.feature_extraction.text import CountVectorizer
     40 from sklearn.naive_bayes import MultinomialNB
     41 from pandas import DataFrame
     42 import numpy as np

~\.conda\envs\MLcours\lib\site-packages\pandas\core\generic.py in ?(self, name)
   6295             and name not in self._accessors
   6296             and self._info_axis._can_hold_identifiers_and_holds_name(name)
   6297         ):
   6298             return self[name]
-> 6299         return object.__getattribute__(self, name)

AttributeError: 'DataFrame' object has no attribute 'append'
  • 1403/07/14
  • ساعت 23:05

سلام خدمت شما دوست عزیز

لطفا لینک زیر رو مطالعه کنین دوست من

خطا توی قسمت append برای دستور DataFrame هستش

https://stackoverflow.com/questions/75956209/error-dataframe-object-has-no-attribute-append


  • 1403/07/15
  • ساعت 08:28

ممنون از شما.با توجه به مطالب اولی که خوندم انگار در نسخه 2.0 pandas متد append حذف شده و باید از دستور دیگه ای استفاده کنم


  • 1403/07/15
  • ساعت 09:31

بله دوست من

باید concat بشن این دو تا لیست شما

نمونه کدش رو توی همون پرسش و پاسخ قرار داده


  • 1403/07/15
  • ساعت 11:39

بله.ممنون


  • 1403/07/15
  • ساعت 11:52

خواهش میکنم دوست من

موفق باشین :)


logo-samandehi